小编psy*_*ave的帖子

在zsh中如何绑定Ctrl + backspace以删除上一个单词?

我正在尝试使用ctrl + backspace将命令绑定到^ W.

这里有两个问题,一个用于bindkey命令的每个参数:

  • 什么是字符串意味着ctrl +退格
  • 删除前一个单词的命令是什么

zsh

9
推荐指数
2
解决办法
2634
查看次数

它们是支持旋转和镜像等几何变换的 unicode 代码点吗?

使用 Unicode 来使用已经很大的组合器和其他修饰符来创建符号已经可以走得很远了。

\n\n

尽管如此,有时某些箭头仅在单个方向上给出,或者变音符号仅位于上方,而不是位于左侧的下方。

\n\n

那么它们是允许指导这样的组合的修饰符/组合符吗?

\n\n

例如,组合矩形允许制作类似 的东西a\xcc\xbb。至少在当前终端上,与它组合的字形相比,它在右上方位置呈现一个矩形a,其最长边水平定向。现在,如果:

\n\n
    \n
  • 目标是将矩形放置在左上角、中上等位置?
  • \n
  • 目标是在与主字形组合之前旋转矩形?
  • \n
  • 目标是在与主字形组合之前镜像矩形?
  • \n
\n\n

显然,最后一点对于矩形来说没有太大区别,但对于不对称字形却有很大区别。

\n

unicode position rotation mirroring combiners

7
推荐指数
1
解决办法
685
查看次数

可以通过命令行访问的多行用法来记录 Rake 任务吗?

Rake 允许简洁地记录任务正在执行的操作。但是,如果任务旨在提供有关其使用情况的更多信息怎么办?这是一个用多行来做的天真的尝试desc

desc <<~lid
  Do nothing, even when arguments are provided.
  Usage:
    rake 'users:idle["something", "anotherthing"]'
    rake 'users:idle[, "anotherthing"]' # something is ignored anyway
    rake users:idle # do nothing tersely
lid
task :idle, [:option, :token] => :environment  do |task, fad|
  # Really, do nothing!
end
Run Code Online (Sandbox Code Playgroud)

但运行rake --tasks只会显示第一行。有没有办法通过一些 rake 命令访问其余部分desc

ruby documentation rake

7
推荐指数
1
解决办法
939
查看次数

Rails+Vue.js 实例上是否有 I18n 在单个存储库中共享语言环境?

我们正在引入 Vue.js 来管理前端。同时,我们正在考虑采用其他方式来管理整个应用程序堆栈中的 I18n。

最初计划的解决方案是使用 gettext 实现,如fast_gettext。但是由于 Vue.js 的到来,一个额外的限制是能够为传统的 Rails 视图和 Vue.js 呈现的元素使用相同的语言环境存储库。

一种可能的有效解决方案是有一种方法来执行类似于 erb 文件可能执行的操作的 rails 代码。

有关信息,Vue.js 是通过 webpacker 安装的,因为我们发现的 gems 似乎已经过时。

ruby-on-rails internationalization rails-i18n vue.js

6
推荐指数
1
解决办法
1281
查看次数

如何在$XDG_CONFIG_HOME中进行zsh搜索配置

展望让我~一个更清洁的地方,我想移动尽可能多的用户配置文件导入$XDG_CONFIG_HOME,这是~/.config默认。所以我想将我所有的 zsh 用户文件存储在$XDG_CONFIG_HOME/zsh/. 到目前为止已经有了这个:

% ls $XDG_CONFIG_HOME/zsh/
histfile  zsh_cache zshrc
Run Code Online (Sandbox Code Playgroud)

很简单,你只需要填写你的~/.zshrc. 现在最棘手的部分似乎是让 zsh 直接读取 $XDG_CONFIG_HOME/zsh/zshrc 而无需从 ~/.zshrc 获取它。你将如何进行?

zsh zshrc

5
推荐指数
2
解决办法
5667
查看次数

为什么BCrypt不再接受哈希?

上周我将Fedora升级到全新的28版本,其中mongodb升级到3.6.请参阅升级到Fedora 28后如何修复mongodb服务?因为我设法解决了我的第一个问题,即mongod将不再启动.现在我在使用同一个数据库的Rails应用程序上面临另一个问题.

这很可能与mongodb升级无关,但我认为值得提供上下文并且不要错过没有提供足够的上下文的解决方案.

因此,自系统升级以来,对此Rails项目的任何登录尝试都将失败BCrypt::Errors::InvalidHash in Devise::SessionsController#create ,并在bcrypt (3.1.11) lib/bcrypt/password.rb:60:ininitialize'`处引发错误.在项目的Rails控制台中进一步分析,似乎对此方法的任何调用都将失败:

> BCrypt::Password.create('TestPassword')
BCrypt::Errors::InvalidHash: invalid hash
from /home/psychoslave/.rbenv/versions/2.4.3/lib/ruby/gems/2.4.0/gems/bcrypt-3.1.11/lib/bcrypt/password.rb:60:in `initialize'
Run Code Online (Sandbox Code Playgroud)

我试图bundle卸载/重新安装bcrypt,甚至使用bcrypt gem的github存储库版本,但它没有改变任何东西.

/home/psychoslave/.rbenv/versions/2.4.3/lib/ruby/gems/2.4.0/gems/bcrypt-3.1.11/lib/bcrypt/password.rb:60:in初始化'`,问题似乎哈希是无效的.

# Initializes a BCrypt::Password instance with the data from a stored hash.
def initialize(raw_hash)
  if valid_hash?(raw_hash)
    self.replace(raw_hash)
    @version, @cost, @salt, @checksum = split_hash(self)
  else
    raise Errors::InvalidHash.new("invalid hash")
  end
end
Run Code Online (Sandbox Code Playgroud)

相应的测试如下:

  def valid_hash?(h)
    h =~ /^\$[0-9a-z]{2}\$[0-9]{2}\$[A-Za-z0-9\.\/]{53}$/
  end
Run Code Online (Sandbox Code Playgroud)

散列本身是通过BCrypt::Engine.hash_secret(secret, BCrypt::Engine.generate_salt(cost))在我使用调用的平台中 创建的__bc_crypt(secret.to_s, salt),它似乎调用了bcrypt-3.1.11/ext/mri/bcrypt_ext.c.

更重要的是binding.pry,在 …

ruby-on-rails bcrypt-ruby mongodb-3.6 fedora-28

5
推荐指数
2
解决办法
943
查看次数

是否可以在Cobol中添加内联注释

大多数现代编程语言都提供了添加内联注释的方法,通常是那些使用换行符表示注释结束的注释,以及用于指示注释开头的任意分隔符或标记序列,同时让行开头是一种解释性指令.

在COBOL中,虽然对整行进行注释已有详细记录(可以通过*在第7列中添加星号符号()来完成),但是找到关于是否可以从任意位置开始注释其余行的文档更难.

问题是:你能否在COBOL的任意位置开始评论一行的其余部分?

想象一下这#是这种评论的特殊性,这里是一个虚构的例子:

   *--- This structure is a dummy example
    01 MY-STRUCTURE.
        05 MY-VARIABLE PIC X VALUE '-'. # Valid values are in {-, a, b}
Run Code Online (Sandbox Code Playgroud)

cobol comments

4
推荐指数
3
解决办法
1万
查看次数

什么使编程语言快?

或者以更相关的方式措辞,编程语言的哪些特性会影响相应生成的可执行文件的稳定性

当然,生成可执行文件的编译器确实很重要.例如,您可以想象一些像编译链一样先进的东西,能够从自然语言描述中推断出可执行文件,用提供的建议询问相关问题,以消除与给定数据进行良好匹配的概率是否过低的歧义.

现在C以使开发人员能够获得真正快速的可执行文件"便携式汇编程序"而闻名.但这是因为语言简化了源代码和目标代码之间的匹配,同时又简化了优化编译器的开发?或者是因为使用C的开发人员对它在木材下工作的方式更敏感,所以代码考虑到了这一点?还是其他一些原因?

人们什么时候开始思考'C是便携式汇编程序'?

compilation

3
推荐指数
1
解决办法
581
查看次数

C宏可以更改宏关键字

宏允许在C中轻松地为关键字设置别名,但也可以用它来更改宏关键字,因此代替:

#include <stdlib.h>

#define se if
Run Code Online (Sandbox Code Playgroud)

一个人可以写

#inkludu <stdlib.h>

#difinu se if
Run Code Online (Sandbox Code Playgroud)

换句话说,预处理指令可以别名,最好是代码本身,例如使用编译器参数,例如-Dgcc.

如下所示的简单测试将失败:

#define difinu define
#difinu valoro 2

int main() {
    int a?o = valoro;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

出现以下错误:

 % clang makro.c -o makro
makro.c:2:2: error: invalid preprocessing directive
#difinu valoro 2
 ^
makro.c:5:16: error: use of undeclared identifier 'valoro'
    int a?o = valoro;
              ^
2 errors generated.
Run Code Online (Sandbox Code Playgroud)

c macros

3
推荐指数
1
解决办法
427
查看次数

在tmux中的zsh中,如何向上/向下滚动页面

使用我当前的zsh和tmux(byobu)配置,键入页面向上/向下键将~在提示符中输入.我想要的是那个

  • 在简单的shell中,使用终端历史记录/滚动条向上/向下滚动页面
  • 在tmux中,向上/向下翻页制作转义命令并使用当前窗口的tmux历史导航
  • 在寻呼机/编辑器中,向上/向下翻页/向下滚动使用寻呼机/编辑器滚动功能

zsh tmux

2
推荐指数
1
解决办法
3202
查看次数

将[0-255]整数范围转换为[0.0-1.0]浮点范围

在WxWidget中,颜色由RGB整数三元组表示.要使用[0.0-1.0] float三元组表示与其他库交互,需要进行转换.

WxPython,Numpy或Python中是否已存在这样的转换函数?

python wxwidgets wxpython type-conversion

1
推荐指数
1
解决办法
8268
查看次数

在 ruby​​ 中,如何选择第一个哈希条目,其键是数组的第一个匹配条目?

目标类似于以下代码:

h={ i:4, j:3, k:2}
a=[ :f, :g, :j, :z, :i]
h.get_first_matching_in(a)
=> :j
h.select first_from(a)
=> :j
Run Code Online (Sandbox Code Playgroud)

什么应该进去.get_first_matching_infirst_from

arrays hash select ruby-on-rails actioncontroller

1
推荐指数
1
解决办法
1175
查看次数

如何将数字转换为unicode粗体版本?

我想在javascript确认弹出窗口中加粗一些字符。由于您不能在那里使用html / css,并用专用的unicode字符扩展了下划线的解决方案,因此我认为我可以简单地用加粗的unicode对应字符替换每个数字,并且它们的长度为5位数(范围从1D7CE到,1D7D7),则​​附带以下代码:

function bold(number) {
  return number.
    replace(/0/, String.fromCharCode(0x1D7CE)).
    replace(/1/, String.fromCharCode(0x1D7CF)).
    replace(/2/, String.fromCharCode(0x1D7D0)).
    replace(/3/, String.fromCharCode(0x1D7D1)).
    replace(/4/, String.fromCharCode(0x1D7D2)).
    replace(/5/, String.fromCharCode(0x1D7D3)).
    replace(/6/, String.fromCharCode(0x1D7D4)).
    replace(/7/, String.fromCharCode(0x1D7D5)).
    replace(/8/, String.fromCharCode(0x1D7D6)).
    replace(/9/, String.fromCharCode(0x1D7D7));
}
Run Code Online (Sandbox Code Playgroud)

但是我必须误会一些东西,例如1?(D7CE)代替。

什么是可行的解决方案?

javascript unicode

0
推荐指数
1
解决办法
409
查看次数