хорошая функция, которая отсутствует, - это возможность скопировать весь буфер обмена, все строки, потому что файл истории не очень удобен без программы для его анализа (возможно, у вас есть сценарий для удаления лишних символов и анализа файла)
Я хорошо вижу новую клавишу ctrl alt +, которая копирует все строки в новую строку. это предотвращает использование файла истории.
Привет,
не могли бы вы развить идею? Я не совсем уверен, что вы имеете в виду, возможно, вы также могли бы привести пример того, что _ точно_ вы хотите / должны делать, чтобы я мог лучше понять ваш вариант использования.
Привет ,
Я хотел бы иметь возможность копировать весь файл истории. это может быть полезно, если я выберу много текстовых блоков для копирования в clipit и хочу обработать копии после.
И файл истории использовать для этого непросто.
Итак, я хорошо вижу вариант, который копирует весь файл истории (а затем все строки) в новую строку. мы можем вставить эту строку (новую копию) и получить весь файл истории (а затем все предыдущие копии). горячая клавиша для этого будет еще лучше.
Эта идея соответствует и моему мышлению. Я был бы очень признателен за эту функцию, которую я называю множеством вкусов. Было бы неплохо иметь возможность копировать более одного ввода, и, наконец, я предпочитаю, чтобы результат вывода был в следующем формате:
вставить 1
пустая строка
паста 2
пустая строка
и т.п.
Это действительно полезно, когда я читаю книги и пытаюсь ухватить важные строки! Возможно ли это сделать?
Я тоже довольно часто скучаю по этой функции.
Очень полезно иметь легкий доступ к истории. Вот утилита, которую я написал на Python. Это работает в Ubuntu. В других системах расположение файла истории может быть другим.
#!/usr/bin/env python
"""cliphist.py: utility to print clipit history file.
If an argument is passed on the command line, it will
be used as a separator, otherwise history items are
separated by a blank line. """
import struct, os, sys
homedir = os.environ['HOME']
histfile = homedir + '/.local/share/clipit/history'
if len(sys.argv) > 1:
sep = sys.argv[1]
else:
sep = ''
with open(histfile,'rb') as f:
f.read(68)
size,_ = struct.unpack('2i',f.read(8))
while (size > 0):
item = f.read(size)
print item
_,_,_,size,_ = struct.unpack('5i',f.read(20))
if size > 0:
print sep
Круто, у меня это работает в командной строке. Как я могу использовать это для прямой вставки в работающую программу?
Если я вас правильно понял, вы можете направить вывод cliphist.py в команду clipit (чтобы сделать его единственной записью в истории), а затем вставить его, как обычно, в другую программу.
$ cliphist.py | clipit
@davidsands хороший сценарий
я добавляю его в свой bashrc:
псевдоним clipit.history = 'python2 /home/emmanuelux/scripts/cliphist.py'
псевдоним clipit.history.copy = 'clipit.history | clipit '
Самый полезный комментарий
Очень полезно иметь легкий доступ к истории. Вот утилита, которую я написал на Python. Это работает в Ubuntu. В других системах расположение файла истории может быть другим.