标签 鼠标 下的文章

1 Linux 内核开发者再次讨论从 C 语言转换为现代 C++ 语言

Linux 内核主要由 C 代码和汇编代码构成,但 Linux 内核邮件列表已重启讨论,探讨未来将 Linux 内核的 C 代码转换为 C++ 的可能性。早在 2018 年,红帽工程师 大卫·豪威尔斯 David Howells 就提出了一组 45 个补丁,将内核转换为 C++。这将允许主线内核使用内联模板函数、内联重载函数、类继承以及其他目前 Linux 内核的 C 代码不支持的功能。但该讨论没有进行下去,最终这些补丁在 Linux 内核邮件列表上停留了六年。昨天,长期从事 Linux 开发的 彼得·安文 H. Peter Anvin 用一篇长文重启了这个讨论。他认为,“C++ 已经有了长足的发展。……C++ 终于 ‘长大’ 了,对于操作系统内核所体现的嵌入式编程而言,它是一种更好的 C 语言。……我们最近提出的许多针对 gcc 扩展的要求,其实在标准 C++ 中很容易实现。”Linux 内核转向 C++ 的阻力之一是 Linus Torvalds 过去一直积极反对 C++。

(插图:DA/3ebf6893-7ebf-4901-8509-16c64ce7982d)

消息来源:Phoronix
老王点评:相关各方的讨论非常激烈,但无论如何,任何决定都应该通过广泛的讨论和不断的修正来进行。

2 新设备允许用户用舌头滚动屏幕

一种名为 MouthPad^ 的新设备可以让用户只用舌头就能滚动浏览智能手机,从而使触摸屏不再需要双手。它是安装在口腔顶部的类似于固定器的触控板,可以感知舌头的运动,让用户可以用舌头轻扫或点击来滚动、打字、打电话甚至下棋 —— “它就是你嘴里的鼠标”。该设备的目的是为残疾人士,尤其是手部残疾或瘫痪人士提供帮助。

(插图:DA/ec5efb61-7b22-41ed-97e3-b7d743a78798)

消息来源:NBC News
老王点评:目的是很好,但总感觉有点奇怪。

3 Brave Search 现在可以提供 AI 代码搜索

Brave 推出了 CodeLLM,这是一款集成到其搜索引擎中的人工智能工具,可提供编程查询结果,包括代码片段、逐步解释和引用。CodeLLM 是免费的,现在已集成到 Brave Search 中,用户无需切换应用即可访问。CodeLLM 建立在使用文本提示生成代码的 LLM Mixtral 之上。

(插图:DA/2cacb37f-574e-41ea-9d4e-2a260149f039)

消息来源:Tech Crunch
老王点评:以后程序员都不需要在 SO 上搜索代码了。

2021 年了,还有人为 Windows 3.1 写了个 PS/2 鼠标驱动?

一位开发者为 Windows 3.1 提供了新的鼠标驱动程序 vmwmouse ,而他这么做的原因是为了确保当微软古老的操作系统作为虚拟机运行时,能够快速而可靠地进行啮齿动物操作。开发者写道,“在VMware 中运行 Windows 3.1,但对不得不手动释放和点入鼠标光标感到烦恼?希望能像现代操作系统一样,直接将光标移入和移出,而不需要按下 Ctrl+Alt 释放鼠标?”所以,他开发了这个驱动程序。他表示,主要的困难是在 USB 出现之前,没有办法发送鼠标的绝对坐标,而 Windows 3.x 来自 USB 之前的时代。

老王点评:额,这真是一种无用而有趣的开发工作。

印度学者在版权诉讼中支持 Sci-Hub 和 LibGen

2020 年 12 月,一些大型全球出版社对 Sci-Hub 和 LibGen 的所有者 Alexandra Elbakyan 提起版权侵权诉讼。Sci-Hub 是一个拥有超过 8500 万篇研究论文的数字图书馆,而 LibGen 是一个链接聚合器,提供免费的学术文章、书籍和杂志。

七名印度的社会科学研究人员在互联网自由基金会(IFF)的法律支持下 递交 了干预申请。他们指出,由于收费过高,他们无法获得所需的论文和学术作品,只能依靠 Sci-Hub 和 LibGen,强调任何封锁这些网站的决定会对其研究产生不利影响,侵犯了研究人员获取信息的权利。印度德里高等法院 正在审理 研究人员和学生使用 Sci-Hub 和 LibGen 是否合法。

老王点评:知识是自由的,前提是这些知识没有印刷在这些需要花钱订阅的期刊上。

Nextcloud 向欧盟投诉微软捆绑 OneDrive 和 Teams 的反竞争行为

Nextcloud 已正式向欧盟委员会 投诉 微软的反竞争行为,即将其 OneDrive 云、Teams 和其他服务与 Windows 10 和 11 捆绑在一起。根据欧盟竞争法,自我推荐本身并不违法,但如果一家公司滥用其市场支配地位,就会违反法律。Nextcloud 指出,微软利用其看门人的地位从而直接阻挡了其他云服务厂商。微软在欧盟的市场份额已经增长到 66%,而当地供应商的市场份额从 26% 下降到 16%。一些开源的非营利组织和企业也加入了 Nextcloud 的投诉。

老王点评:微软现在恐怕已经忘记了上世纪 90 年代 IE 垄断案被处罚的历史了。

一句话回音

  • #464 期我们报道过,Rust 审核团队集体辞职。现在据称问题是由 Ashley Williams 引发的,她本来应该负责执行行为准则,但却同时不受准则的约束。她此前担任过 Node.js 基金会的董事,曾被指控 多次违反 Node 基金会的行为准则。

我使用 Oracle VirtualBox 来测试各种类 Unix 操作系统。我的大多数虚拟机都是 无头 headless 服务器,它们没有图形桌面环境。很长一段时间,我一直想知道如何在无头 Linux 服务器的基于文本的终端中使用鼠标。感谢 GPM,今天我了解到我们可以在虚拟控制台中使用鼠标进行复制和粘贴操作。 GPM,是 通用鼠标 General Purpose Mouse 的首字母缩写,它是一个守护程序,可以帮助你配置 Linux 虚拟控制台的鼠标支持。请不要将 GPM 与 GDM GNOME 显示管理器 GNOME Display manager )混淆。两者有完全不同的用途。

GPM 在以下场景中特别有用:

  • 新的 Linux 服务器安装或默认情况下不能或不使用 X Windows 的系统,如 Arch Linux 和 Gentoo。
  • 在虚拟终端/控制台中使用复制/粘贴操作。
  • 在基于文本的编辑器和浏览器中使用复制/粘贴(例如,emacs、lynx)。
  • 在文本文件管理器中使用复制/粘贴(例如 Ranger、Midnight commander)。

在这个简短的教程中,我们将看到如何在类 Unix 操作系统中在基于文本的终端中使用鼠标。

安装 GPM

要在纯文本 Linux 系统中启用鼠标支持,请安装 GPM 包。它在大多数 Linux 发行版的默认仓库中都有。

在 Arch Linux 及其变体如 Antergos、Manjaro Linux 上,运行以下命令来安装 GPM:

$ sudo pacman -S gpm

在 Debian、Ubuntu、Linux Mint 中:

$ sudo apt install gpm

在 Fedora 上:

$ sudo dnf install gpm

在 openSUSE 上:

$ sudo zypper install gpm

安装后,使用以下命令启用并启动 GPM 服务:

$ sudo systemctl enable gpm
$ sudo systemctl start gpm

在基于 Debian 的系统中,gpm 服务将在你安装后自动启动,因此你无需如上所示手动启动服务。

为 Linux 虚拟控制台配置鼠标支持

无需特殊配置。GPM 将在你安装并启动 gpm 服务后立即开始工作。

在安装 GPM 之前,看下我的 Ubuntu 18.04 LTS 服务器的屏幕截图:

正如你在上面的截图中看到的,我的 Ubuntu 18.04 LTS 无头服务器中没有可见的鼠标指针。只有一个闪烁的光标,它不能让我选择文本,使用鼠标复制/粘贴文本。在仅限 CLI 的 Linux 服务器中,鼠标根本没用。

在安装 GPM 后查看 Ubuntu 18.04 LTS 服务器的以下截图:

看见了吗?我现在可以选择文字了。

要选择,复制和粘贴文本,请执行以下操作:

  • 要选择文本,请按下鼠标左键并拖动鼠标。
  • 选择文本后,放开鼠标左键,并按下中键在同一个或另一个控制台中粘贴文本。
  • 右键用于扩展选择,就像在 xterm 中。
  • 如果你使用的是双键鼠标,请使用右键粘贴文本。

就这么简单!

就像我已经说过的那样,GPM 工作得很好,并且不需要额外的配置。以下是 GPM 配置文件 /etc/gpm.conf(或在某些发行版中是 /etc/conf.d/gpm)的示例内容:

# protected from evaluation (i.e. by quoting them).
#
# This file is used by /etc/init.d/gpm and can be modified by
# "dpkg-reconfigure gpm" or by hand at your option.
#
device=/dev/input/mice
responsiveness=
repeat_type=none
type=exps2
append=''
sample_rate=

在我的例子中,我使用 USB 鼠标。如果你使用的是其他鼠标,则可能需要更改 device=/dev/input/micetype=exps2 参数的值。

有关更多详细信息,请参阅手册页。

$ man gpm

就是这些了。希望这个有用。还有更多的好东西。敬请期待!

干杯!


via: https://www.ostechnix.com/how-to-configure-mouse-support-for-linux-virtual-consoles/

作者:SK 
选题:lujun9972 
译者:geekpi 
校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

`  
你是否曾经拥有一个梦
    ——你的计算机
         可以自动为你干活?
或许,并非因为
    你刚看了终结者。
然而,除此之外
    脚本和任务自动化
        是每个高级用户追寻的梦
如果今天
    有许多的解决方案
        可以满足这个目标
那么
    有时候
       就难以从那众多之中采撷那
       简洁、聪明而又高效的一个
我
    不能假装
       是我自己发现了它
而与此同时
    却偏爱着那个
       整洁的软体——xdotool
其方法是如此直观
    正如它作为X11自动化工具的表露
转换思想
    xdotool可以通过读取文本文件
       模拟击键的旋律
           以及鼠标的曼舞  
`

让Xdotool在Linux定居

对于Ubuntu,Debian或者Linux Mint,你能够只做:

$ sudo apt-get install xdotool 

对于Fedora,请使用yum命令:

$ sudo yum install xdotool 

对于CentOS用户,可以在EPEL repo中找到该包。在启用EPEL仓库后,只要使用上面的yum命令就可以达成你的愿望。

对于Arch用户,可在Community仓库中找到该包:

$ sudo pacman -S xdotool 

如果你还是找不到你的发行版的对应xdotool,你可以从它的官方站点下载。

Xdotool基本功

虽然xdotool是那样的直观,但它仍然是个脚本程序。因此,为了要正确地使用它,你还是得了解它的语法。不过敬请放心,相对于程序的功能而言,语法还是比较简单易学的。

首先,模拟击键是很容易的。你可以从终端敲入下面的命令:

$ xdotool key [name of the key] 

如果你想要连接两个键,可以在它们之间使用“+”操作符。它看起来像这样:

$ xdotool key alt+Tab 

这两个组合键可以为你切换窗口。

要想让xdotool帮你输入,可以使用以下命令:

$ xdotool type '' 

这些对于基本的击键而言已经足够了。但是,xdotool的众多长处之一,就是它可以获取特定窗口的焦点。它可以获取右边的窗口,然后在里面输入,所有你记录下的按键都不会人间蒸发,而是老老实实的如你所愿的出现在那里。要获得该功能,一个简单的命令可以搞定:

$ xdotool search --name [name of the window] key [keys to press]

该命令将在打开的窗口中搜索对应名称的窗口,并聚焦于该窗口,然后模拟击键。

来点更高级的,但很有用哦,xdotool可以模拟鼠标移动和点击,看这命令:

$ xdotool mousemove x y 

你可以将光标定位到屏幕坐标(x,y)(像素)。你也可以使用“click”参数来组合:

$ xdotool mousemove x y click 1 

这会让鼠标移动到(x,y),然后点击鼠标左键。“1”代表鼠标左键,“2”则是滚轮,“3”则是右键。

最后,一旦你这些命令根植于你脑海,你也许想要实际转储于文件来编辑并试着玩玩。鉴于此,就会有超过一个语句以上的内容了。你需要的就是写一个bash脚本了:

#!/bin/bash

xdotool [command 1]
xdotool [command 2]
etc

或者你可以使用:

$ xdotool [filename] 

这里你将命令写入到一个独立的文件中,然后通过将文件名作为xdotool命令的参数。

意外收获

作为本文的一个意外收获,这里是xdotool的一个具体实例。你可能听说过,也可能没听说过Bing —— 微软的搜索引擎。在后面的实例中,你会看到你可能从没听过Bing奖励:一个程序,可以让你用Bing积分兑取亚马逊的礼物卡和其它的一些礼物卡(LCTT 译注:我是从来没听说过~)。要赚取这些积分,你可以每天在Bing上搜索累计达30次,每次搜索你都会获得0.5个积分。换句话说,你必须把Bing设为默认搜索引擎,并每天使用它。

或者,你可以使用xdotool脚本,在这个脚本中,会自动聚焦到Firefox(你可以用你喜欢的浏览器来取代它),并使用fortune命令生成一些随机单词来实施搜索。大约30秒之内,你的日常搜索任务就完成了。

#!/bin/bash

for i in {1..30}
do
  WID=`xdotool search --title "Mozilla Firefox" | head -1`
  xdotool windowfocus $WID
  xdotool key ctrl+l
  xdotool key Tab
  SENTENCE="$(fortune | cut -d' ' -f1-3 | head -1)"
  xdotool type $SENTENCE
  xdotool key "Return"
  sleep 4
done

下面来个小结吧:我真的很喜欢xdotool,即便它的完整功能超越了本文涵盖的范围。这对于脚本和任务自动化而言,确实是种平易的方式。负面的问题是,它可能不是最有效率的一个。但我要再说一遍,它忠于职守了,而且学习起来也不是那么麻烦。

你对xdotool怎么看呢?你是否更喜欢另外一个自动化工具,而不是它呢?为什么呢?请在评论中告诉我们吧。


via: http://xmodulo.com/2014/07/simulate-key-press-mouse-movement-linux.html

译者:GOLinux 校对: wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出

电脑的鼠标被设计成使用食指(大拇指旁边的那个手指)完成大部分操作。默认情况下鼠标为右利手用户配置。打开电脑时,多数情况下你会使用食指完成点击动作。

事实上,许多左利手用户(俗称左撇子)习惯把鼠标放到键盘的左边,然后用中指进行单击操作。但这并不是左利手用户使用鼠标最好的方法。

这个简短的教程为想要正确地使用左手操作鼠标的用户而编写。它将会帮助左利手用户将鼠标设置成用食指点击鼠标主键的操作模式。

这个教程同样适用于右利手用户。如果鼠标为左利手用户设置,那么右利手用户可以使用这个教程将鼠标键切换回来。

好了,现在咱们开始吧,点击顶部右端面板中的齿轮按钮选择System Settings(系统设置)...

然后在系统设置选项中选择Mouse & Touchpad (鼠标和触摸板),打开后选择‘Right(右)’选项,这样就可以改变鼠标的主键以适应左利手用户。

改回左以适应右利手用户。改变将会在选择后立即生效。

就是这样了。现在左撇子用户可以将鼠标移到键盘左边,用左手的食指来正确地操作鼠标了。

使用愉快!


via: http://www.liberiangeek.net/2013/11/daily-ubuntu-tipsmake-the-mouse-left-handed-for-left-hand-users/

译者:Linchenguang 校对:wxy

本文由 LCTT 原创翻译,Linux中国 荣誉推出