Необходимо изменить цвет строки курсора к цвету кроме цвета курсора. Если Вы находитесь в эмуляторе терминала как st
или rxvt
, Vim не может изменить цвет Вашего курсора; это всегда будет цвет, Ваше терминальное приложение решает сделать его. Только графическая версия Vim может изменить цвет Вашего курсора.
Можно изменить цвет курсора через терминальную конфигурацию все же.
Некоторые ~/.Xdefaults
/ ~/.Xresources
примеры:
XTerm*cursorColor: #FFFFFF
URxvt.cursorColor: white
Вы могли также использовать команду Vim :set cursorcolumn
помещать Ваш курсор в крест нитей.
Хорошо, я на самом деле написал какой-то код, который мне нужен. Хорошая вещь, это довольно легко в Qt.
Информация о строительстве находится внизу этого поста.
xclipshow.cpp:
#include <QApplication>
#include <QTimer>
#include <QClipboard>
#include <QMimeData>
#include <QDebug>
#include <QStringList>
class App: public QObject {
Q_OBJECT
private:
void main();
public:
App(): QObject() { }
public slots:
void qtmain() { main(); emit finished(); }
signals:
void finished();
};
void App::main() {
QClipboard *clip = QApplication::clipboard();
for(QString& formatName: clip->mimeData()->formats()) {
std::string s;
s = formatName.toStdString();
QByteArray arr = clip->mimeData()->data(formatName);
printf("name=%s, size=%d: ", s.c_str(), arr.size());
for(int i = 0; i < arr.size(); i++) {
printf("%02x ", (unsigned char) arr.at(i));
}
printf("\n");
}
}
int main(int argc, char **argv) {
QApplication app(argc, argv);
App *task = new App();
QObject::connect(task, SIGNAL(finished()), & app, SLOT(quit()));
QTimer::singleShot(0, task, SLOT(qtmain()));
return app.exec();
}
#include "xclipshow.moc"
cmakelists.txt:
cmake_minimum_required(VERSION 3.0.0)
project(xclipshow)
find_package(Qt5Widgets)
set(CMAKE_AUTOMOC ON)
set(CMAKE_INCLUDE_CURRENT_DIR ON)
set(SRC
xclipshow.cpp)
add_definitions(-std=c++11)
add_executable(xclipshow ${SRC})
qt5_use_modules(xclipshow Widgets Core)
Информация о строительстве в соответствии с комментарием @SLM: это зависит от используемой системы. Этот код нуждается в QT5 и Cmake для компиляции. Если у вас обоих, все, что вам нужно сделать, это запустить:
BUILD_DIR=<path to an empty temporary dir, which will contain the executable file>
SRC_DIR=<path to the directory which contains xclipshow.cpp>
$ cd $BUILD_DIR
$ cmake $SRC_DIR
$ make
или «gmake», если вы на FreeBSD или «Mingw32-make», если вы находитесь в Windows и т. Д.
, если вы не T У Qt5 или Cmake вы можете попытаться уйти с Qt4 и ручной компиляцией:
$ moc xclipshow.cpp > xclipshow.moc
$ g++ xclipshow.cpp -o xclipshow `pkg-config --cflags --libs QtGui` -I. --std=c++11
Если вы получаете информацию о недействителен - STD = C ++ 11
, попробуйте - -Std = C ++ 0x
вместо этого и рассмотрите возможность обновления вашего компилятора;).
Используйте xclip
:
xclip -o -t TARGETS
, чтобы увидеть все доступные типы. Например:
$ xclip -o -t TARGETS TIMESTAMP TARGETS MULTIPLE text/html text/_moz_htmlcontext text/_moz_htmlinfo UTF8_STRING COMPOUND_TEXT TEXT STRING text/x-moz-url-priv
xclip -o -t text / html