Sublime Textは強力な機能を備えたコードエディタですが、Sublime TextはLinuxで実行しているときに中国語を入力できません。次の小シリーズでは、Sublime TextがLinuxで中国語を入力できないという解決策を紹介します。
1.保存し、次のコードsublime_imfix.c
次のようにコードは次のとおりです。
/*
崇高-imfix.cの
LD_PRELOADを使用して、linuxの崇高な入力メソッドのサポートを修正するための関数を挿入します。
By Cjacker Huang "jianzhong.huang at i-soft.com.cn"
gcc -shared - o libsublime-imfix.so sublime_imfix.c `pkg-config --libs --cflags gtk + -2.0` -fPIC
LD_PRELOAD =。 /libsublime-imfix.so sublime_text
* /
の#include "GTK /gtk.h"
の#include "GDK /gdkx.h"
のtypedef GdkSegment GdkRegionBox;
構造体_GdkRegion
{
長尺;
長いnumRects;
GdkRegionBox * rects;
GdkRegionBoxエクステント;
};
GtkIMContext * local_context;
ボイド
gdk_region_get_clipbox(CONST GdkRegion *領域、
GdkRectangle *矩形)
{
g_return_if_fail(領域= NULL); !!
g_return_if_fail(矩形= NULL);
rectangle-「X =領域 - "extents.x1;
rectangle-" Y =領域 - "extents.y1;
rectangle-" 幅=領域 - "extents.x2 - 領域 - " extents.x1;
rectangle- "高さ=領域 - " extents.y2 - 領域 - "extents.y1;
GdkRectangle RECT;
rect.x = rectangle-" X。
rect.y = Rectangle- "Y;
rect.width = 0;
rect.height = rectangle-" 高さ;
//キャレット幅は2であり;
//多分、時には私たちは間違いを犯しますが、ほとんどの時間のために、それがあるべきキャレット
もし(「幅== 2&#038 rectangle-;& GTK_IS_IM_CONTEXT(local_contextを))。 {
gtk_im_context_set_cursor_location(local_context、長方形);
}
}
//あなたのファイルダイアログで入力何かあれば、これは、例えば、必要とされていますそして
<
//コンテキストが失われますので、ここで我々は再びそれを設定する。
静的GdkFilterReturnのevent_filter(GdkXEvent *たXEvent、GdkEvent *イベント、gpointerのim_context)
編集領域をバック返しますP> {
たXEvent * XEV =(たXEvent *)たXEvent;
IF(xev-「タイプ== KeyRelease&#038;&#038; GTK_IS_IM_CONTEXT(im_context)){
GdkWindow *勝利= g_object_get_data(G_OBJECT(im_context)、'ウィンドウ');
IF(GDK_IS_WINDOW(勝利))
gtk_im_context_set_client_window(im_context、勝つ);
}
戻りGDK_FILTER_CONTINUE;
} < BR>
ボイドgtk_im_context_set_client_window(GtkIMContext *コンテキスト、
GdkWindow *ウィンドウ)
{
GtkIMContextClass *のklass;
g_return_if_fail(GTK_IS_IM_CONTEXT(コンテキスト));
のklass = GTK_IM_CONTEXT_GET_CLASS(コンテキスト);
IF(klass- "set_client_window)
klass-" set_client_window(コンテキスト、ウィンドウ);
(もし! GDK_IS_WINDOW(ウィンドウ))
return;
g_object_set_data(G_OBJECT(コンテキスト)、'、ウィンドウ);
int width = gdk_window_get_width(window);
int height = gdk_window_get_height(ウィンドウ);
if(width!= 0& height; = 0){
gtk_im_context_focus_in(context);
local_context = context;
}
gdk_window_add_filter(window、event_filter、context);
}
2.動的ライブラリをコンパイルします。
コードは以下のとおりです。
gcc -shared -o libsublime-imfix.so sublime_imfix.c `pkg-config --libs --cflags gtk + -2.0` -fPIC
3. LD_PRELOADを設定します。 Sublime Textを起動します。
コードは次のとおりです。
LD_PRELOAD =。 /libsublime-imfix.so sublime_text
毎回Sublime Textを起動せずに長いリストを作成するには、Sublimeを起動するスクリプトを作成します。
コードは次のとおりです。
#! /bin /bash
SUBLIME_HOME =' /opt /sublime_text'
LD_LIB = $ SUBLIME_HOME /libsublime-imfix.so
sh -c' LD_PRELOAD = $ LD_LIB $ SUBLIME_HOME /sublime_text $ @'
Sublime Textディレクトリにlibsublime-imfix.soを置き、Sublime Textを中国語で入力できるようにスクリプトのSUBLIME_HOMEを変更します。
上記はSublime TextがLinuxでは中国語を入力できないという解決策の紹介ですが、上記の手順に従ってSublime Textに中国語を入力することができます。試してみてください。
Ubuntuでgnomeのパネルオプションと電源管理の一部のオプションを削除すると、Ubuntuシステムのメニューバーとステータスバーが消えます。 gnomeパネルを
Linuxシステムでのnetstatコマンドの使用法はたくさんあり、すべてのポートを一覧表示して現在のUDP接続の状態を表示することができます今日、Xiaobianはnetstatコマンドを使って80ポート接続の数を表示する方法を紹介します。学ぶようになることができます。
サーバー上のいくつかの統計:
1)統計80ポート接続
Grep -i&ldquo; 80&rdquo;
Linux Tsungストレステストをするとき、複数のtcp要求を作成する必要があるかもしれませんが、システムファイルのオープン数は固定されており、需要を満たすことはできません。開いているファイルの数
ccはメインの攻撃ページを攻撃し、多くのユーザーが絶えずWebサイトにアクセスするようにシミュレートしているため、大量のシステムリソースが発生しています。
すべての80ポートの接続
は、netstat -natを見ます
Grep -i&ldquo; 80&rdquo;
Linuxでmysqlのrootパスワードを変更した後にデータベースを扱う方法が消えた?
LinuxがCrontabを使用して日常業務をスケジュールする方法
Linuxシステムでは、Crontabはスケジュールされたタスクまたは定期的に実行されるタスクに使用できます。このようにして、Crontabを使用して毎日のタスクをスケジュールし、毎日タスクが自動的に実行されるようにすることができます。この記事では、LinuxがCrontabを使用して日常業務をスケジュールする方法を紹介します。 1のcrontabは何ですか? 64ビットのCentOS 6.4のインストール設定ntopngステップ