小编mkr*_*er1的帖子

Vim:搜索光标下的单词(不是 * 或 #)

我想复制 Sublime Text 的“CTRL-D”行为,突出显示光标下的当前单词。

*并且#在这里不起作用,因为它们会自动移动光标(如nN),这是我明确不想要的。

为了突出显示光标下的当前单词,我发现以下方法是有效的:

yiw
:let @/=@@
:set hls
Run Code Online (Sandbox Code Playgroud)

如果您手动输入此内容,它会按预期正常工作。

我的问题是,我只是不明白我把它放在键盘映射上以便绑定它时做错了什么。

到目前为止我尝试过的是:

  1. 创建一个函数,然后将其映射到一个键:

    function SearchWordUnderCursor()
        silent! yiw
        silent! :let @/ = @@
        silent! :set hls
    endfunction
    
    Run Code Online (Sandbox Code Playgroud)
  2. 使用内联键绑定,如下所示:

    nmap <C-D> yiw | :let @/ = @@ | :set hls
    
    Run Code Online (Sandbox Code Playgroud)

这两种方法都不能按预期工作,我不知道我做错了什么。

搜索模式/寄存器设置得很好,但立即突出显示不起作用,您必须手动nN一次才能显示突出显示,但这会移动光标,而不是“手动”方法。

为什么它像手动输入一样很难完成?

我正在使用 NVIM v0.2.2。

vim neovim

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

time.time() 和 datetime.utcnow() 之间的区别

我想知道time.time()和之间的区别datetime.datetime.utcnow()。两者都返回当前 UTC 时间吗?

python datetime python-3.x

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

如何将数据框中第一行的字符串与其他每一行的字符串进行比较并计算 R 中的不匹配数?

我有一个包含数千行和列的数据框,我需要计算从第一行到每隔一行(row1–row2、row1–row3、row1–row4、...)的字符变量的变化并输出总数更改为新列。

df <- data_frame(
  a = c("1 2", "1 2", "2 2", "2 2"),
  b = c("2 1", "1 2", "1 2","1 2"),
  c = c("1 1", "1 2", "2 1","2 2"),
  d = c("1 1", "1 1", "2 1","2 1")
)

df
a     b     c     d    
  <chr> <chr> <chr> <chr>
1 1 2   2 1   1 1   1 1  
2 1 2   1 2   1 2   1 1  
3 2 2   1 2   2 1   2 1  
4 2 …
Run Code Online (Sandbox Code Playgroud)

compare r rows

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

Discord.js bot 会在提及时做出响应

我试图让我的 discord.js bot 在 ping 时发送一条消息。我不确定如何执行此操作,因此我参考了此代码:

client.on('message', message => {
    if (message.content === '<@745648345216712825>') {
        message.channel.send('Message Here');
    }
});
Run Code Online (Sandbox Code Playgroud)

但是,这不起作用。

此外,当一个人提到特定用户时,我的机器人是否有可能做出响应,例如,如果用户在机器人响应的消息中的任何地方提到了我?如果是的话,你能告诉我怎么做吗?

javascript node.js discord discord.js

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

为什么在 PyQt5 mp3 文件循环中不起作用?

我制作了一个应用程序,它将使 mp3 响铃 100 次。但它只工作1次。为什么会发生这种情况?

这是代码

from PyQt5.QtWidgets import *
from PyQt5.QtCore import *
from PyQt5.QtMultimedia import *
from PyQt5 import QtCore, QtMultimedia
from PyQt5.QtGui import *
import sys


class AlarmWindow(QDialog):
    def __init__(self, alarmName, alarmTime, alarmTone):
        super().__init__()

        self.setWindowTitle = alarmName
        self.top, self.left = 100, 50
        self.width, self.height = 600, 350
        self.setFixedWidth(600)
        self.setFixedHeight(350)
        self.icon = "icons\\alarm.ico"
  
        self.url = QtCore.QUrl.fromLocalFile(alarmTone)
        self.content = QtMultimedia.QMediaContent(self.url)
        self.player = QtMultimedia.QMediaPlayer()
        self.player.setMedia(self.content)
        self.play()
        self.show()

    def play(self):
        for i in range(100):
            self.player.play()


if __name__ == "__main__":
    app = …
Run Code Online (Sandbox Code Playgroud)

python pyqt5

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

尝试格式化时间和日期时出现“模块‘babel’没有属性‘日期’”

我用Babel编写了这个函数来格式化 Flask 应用程序中的时间和日期:

import babel
from flask import Flask

app = Flask(__name__)

def format_datetime(value, format='medium'):
    if format == 'full':
        format = "EEEE MMMM, d, y 'at' h:mma"
    elif format == 'medium':
        format = "EE MM, dd, y h:mma"

    print(format)    
    return babel.dates.format_datetime(date, format)

app.jinja_env.filters['datetime'] = format_datetime

strTime = '2021-01-07 12:13:07'
print(format_datetime(strTime))
Run Code Online (Sandbox Code Playgroud)

但是当我运行它时,它引发了这个异常:

import babel
from flask import Flask

app = Flask(__name__)

def format_datetime(value, format='medium'):
    if format == 'full':
        format = "EEEE MMMM, d, y 'at' h:mma"
    elif format == 'medium': …
Run Code Online (Sandbox Code Playgroud)

python python-3.x python-babel

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

如何更改位于 2 倍数位置的所有字母?

我正在尝试使用字符更改 2 的倍数的字符/字母的位置*。但是,当我尝试运行它时,我收到一条错误消息

“str”对象不支持项目分配

def guess(x):
    i = 0
    while i < len(x):
        if i % 2 == 0:
            x[i] = "*"
            i = i + 1
    return x
    print(guess("today is a beautiful day"))
Run Code Online (Sandbox Code Playgroud)

我怎样才能正确地做到这一点?

python string

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

PyWinAuto type_keys() 不在单词之间留出空格

我正在尝试使用 pywinauto 在 Python 中制作语音输入程序。首先,我使用 SpeechRecognition 模块识别语音,并将识别的语音转换为字符串,然后使用该type_keys()方法在记事本中键入字符串。

这是代码:

from pywinauto import application
import time
import speech_recognition as sr

app = application.Application()
app.start("Notepad.exe")

def type_keys_in_notepad():
    r = sr.Recognizer()
    with sr.Microphone() as source:
        print("Listening...")
        r.pause_threshold = 1
        r.adjust_for_ambient_noise(source)
        audio = r.listen(source)


    try:
        print("Recognizing...")
        content = r.recognize_google(audio, language="en-in")
        print(content)
        content_str = str(content)
        app.Notepad.edit.type_keys(content_str)

    except Exception as e:
        print(e)

type_keys_in_notepad()
Run Code Online (Sandbox Code Playgroud)

python pywinauto

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

为什么我的代码跳过整个“for i in range”循环?

我遇到了一个问题,我的代码跳过for所有输入提示的循环,并直接打印循环下方的列表。

出了什么问题,我该如何解决?

import statistics

Age = list()
SaturnRT = list()
MarsRT = list()
Mars = list()
Saturn = list()
Houses = ['saturn', 'Saturn', 'Mars', 'mars']
CheckList = ['Saturn', 'saturn']
ReactionTime = list()
inputVar = None


for i in range(0, ):
    print("enter age: ")
    while inputVar != type(int):
        try:
            inputVar = int(input())
            while inputVar>16 or inputVar<12:
                print("error! invalid entry")
                inputVar = int(input("enter the age: "))
            break
        except:
            print("enter an integer! ")
    Age.append(inputVar)

    print("enter reaction time (ms): ")
    while inputVar …
Run Code Online (Sandbox Code Playgroud)

python loops range python-3.x

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

有没有办法为两个集群配置 ALB?

我正在尝试在 AWS 中为同一 VPC 中的两个集群设置单个负载均衡器,这可能吗?

因为它只提供一个 DNS 名称,有时路由到集群 A,有时路由到集群 B。

cluster-computing amazon-web-services amazon-elb

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