Warning: Undefined array key "file" in /usr/local/www/apache24/data/wordpress/wp-includes/media.php on line 1723
この記事は2年以上前に書いたものです。
そのため情報が古い可能性があります。ご了承ください。m(_ _)m
そのため情報が古い可能性があります。ご了承ください。m(_ _)m
(超弩級Wikipedia検索の画面をお借りしてます)
緑色で、http://ja.wikipedia.org/wiki/XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX になっている部分は、URLエンコードされている。
日本語フォルダ・ファイル名が大量にあるドキュメントに対して、estcmd gatherしているような場合は、
URLデコードされた状態で表示して欲しい場合もあります。ので、そのパッチを作ってみました。
・estseek.c (estseek.c.patch)
user@qos % diff diff -crN estseek.c estseek.c.new
*** estseek.c 2011-04-17 20:27:25.000000000 +0900
--- estseek.c.new 2011-04-17 20:26:38.000000000 +0900
***************
*** 91,96 ****
--- 91,97 ----
const char *g_qxpndcmd = NULL; /* command for query expansion */
const char *g_logfile = NULL; /* path of the log file */
const char *g_logformat = NULL; /* format of the log */
+ int g_doclinkdecode = FALSE; /* whether to decode doc_link */
/* global variables for parameters */
***************
*** 304,309 ****
--- 305,312 ----
g_logfile = skiplabel(rp);
} else if(cbstrfwimatch(rp, "logformat:")){
g_logformat = skiplabel(rp);
+ } else if(cbstrfwimatch(rp, "doclinkdecode:")){
+ if(!cbstricmp(skiplabel(rp), "true")) g_doclinkdecode = TRUE;
}
}
if(!g_indexname) showerror("indexname is undefined.");
***************
*** 1760,1766 ****
xmlprintf("<dd class="doc_navi">\n");
xmlprintf("<span class="doc_link">");
sprintf(numbuf, "%%%d@", detail ? 9999 : g_attrwidth);
! xmlprintf(numbuf, turi);
xmlprintf("</span>\n");
if(*g_dispproxy != '\0'){
if(!strcmp(g_dispproxy, "[URI]")){
--- 1763,1775 ----
xmlprintf("<dd class="doc_navi">\n");
xmlprintf("<span class="doc_link">");
sprintf(numbuf, "%%%d@", detail ? 9999 : g_attrwidth);
! if(g_doclinkdecode){
! char *dturi = cburldecode(turi, NULL);
! xmlprintf(numbuf, dturi);
! free(dturi);
! } else{
! xmlprintf(numbuf, turi);
! }
xmlprintf("</span>\n");
if(*g_dispproxy != '\0'){
if(!strcmp(g_dispproxy, "[URI]")){
*** estseek.c 2011-04-17 20:27:25.000000000 +0900
--- estseek.c.new 2011-04-17 20:26:38.000000000 +0900
***************
*** 91,96 ****
--- 91,97 ----
const char *g_qxpndcmd = NULL; /* command for query expansion */
const char *g_logfile = NULL; /* path of the log file */
const char *g_logformat = NULL; /* format of the log */
+ int g_doclinkdecode = FALSE; /* whether to decode doc_link */
/* global variables for parameters */
***************
*** 304,309 ****
--- 305,312 ----
g_logfile = skiplabel(rp);
} else if(cbstrfwimatch(rp, "logformat:")){
g_logformat = skiplabel(rp);
+ } else if(cbstrfwimatch(rp, "doclinkdecode:")){
+ if(!cbstricmp(skiplabel(rp), "true")) g_doclinkdecode = TRUE;
}
}
if(!g_indexname) showerror("indexname is undefined.");
***************
*** 1760,1766 ****
xmlprintf("<dd class="doc_navi">\n");
xmlprintf("<span class="doc_link">");
sprintf(numbuf, "%%%d@", detail ? 9999 : g_attrwidth);
! xmlprintf(numbuf, turi);
xmlprintf("</span>\n");
if(*g_dispproxy != '\0'){
if(!strcmp(g_dispproxy, "[URI]")){
--- 1763,1775 ----
xmlprintf("<dd class="doc_navi">\n");
xmlprintf("<span class="doc_link">");
sprintf(numbuf, "%%%d@", detail ? 9999 : g_attrwidth);
! if(g_doclinkdecode){
! char *dturi = cburldecode(turi, NULL);
! xmlprintf(numbuf, dturi);
! free(dturi);
! } else{
! xmlprintf(numbuf, turi);
! }
xmlprintf("</span>\n");
if(*g_dispproxy != '\0'){
if(!strcmp(g_dispproxy, "[URI]")){
・パッチ適用
user@qos % cd /usr/ports/textproc/hyperestraier/
user@qos % sudo make
user@qos % cd work/hyperestraier-1.4.13
user@qos % wget 'https://qos.dev7.net/files/estseek.c.patch'
user@qos % sudo patch -p < estseek.c.patch
user@qos % cd ../..
user@qos % sudo make
user@qos % sudo make install
user@qos % sudo make
user@qos % cd work/hyperestraier-1.4.13
user@qos % wget 'https://qos.dev7.net/files/estseek.c.patch'
user@qos % sudo patch -p < estseek.c.patch
user@qos % cd ../..
user@qos % sudo make
user@qos % sudo make install
・estseek.conf
doclinkdecode: true