怒りマーク [So-netさん]
「💢」が勝手に「<img src="https://blog.ss-blog.jp/_images_e/152.gif" width="15" height="15" alt="[むかっ(怒り)]" border="0" class="sonet-icon" />」に書き換えられる件。
っ!(笑)
っ!(笑)
どうしたもんじゃろ〜の〜。
因みにタイトルに絵文字を書いたらどうなるか?
利用者は各自でお試しあれ。私はここのブログでこれ以上この問題に関わりたくない。っ!
利用者は各自でお試しあれ。私はここのブログでこれ以上この問題に関わりたくない。っ!
伊豆 [So-netさん]
台風19号 午後6時ごろ伊豆半島に上陸のおそれ(既に削除された記事です)
これは上陸しているのか?
こいつが立ち去るまで、あと数時間の勝負である。
ってかなんで晩ごはんの時間に来るだかな!
ってかなんで晩ごはんの時間に来るだかな!
ご飯とテレビは下(1F)に降りるので、食べ終わる頃には私の部屋(2F)は消滅しているかもしれない。
なんか地震揺れてるし。。。
ここまで書いて保存かけるとまたこれだ。
ブログ [So-netさん]
どことは言わないが、慢性的な問題を全く解決しようとはせず、仕様変更と称して既存の使い勝手を今以上に悪くし既存ユーザーを不快にさせることに関しては天才的な能力を発揮するブログがある、ということは言っておこう。
警告 [So-netさん]
何をどうしたのかはわからぬが、先程の記事↓を投稿した画面を放置していたら、ウィルスがどうこういう怪しげな警告画面になっていて(焦ってスクショ取り忘れた。再現しない。まさに痛恨の極みbyバシヒデ)、こんなものが勝手にダウンロードされていた。
実に危険。
直接関係ないかもしれないが、So-netブログ利用者の方々は念のためご注意を。。。
直接関係ないかもしれないが、So-netブログ利用者の方々は念のためご注意を。。。
iframe内の&(&)がいつの間にか認識されなくなっている件 [So-netさん]
こちらの認識違いがあったようなので、タイトルと内容を一部変更させていただく。知識不足で申し訳ない。
「&がいつの間にか&になっている件」 → 「iframe内の&(&)がいつの間にか認識されなくなっている件」
(いずれにせよ、これ以上この問題に深入りするつもりはない。)
結果、埋め込み画像が表示されなくなっていた。直しても強制的に改変されてしまう。エスケープとかなんとかできそうな気もするが、面倒なので応急措置。近々まるごと別宅に移動する予定。他にもあるかも。
んっっと、めんどくさいなあ。。。
んっっと、めんどくさいなあ。。。
三浦主尾根プロジェクト 第二回 池代〜武山〜YRP(付:三浦三山)
google-code-prettifyの設定をやっと直した件 [So-netさん]
Safariの件、Safariを再起動すれば治るようだ。それはそれで面倒だが。
どうやらヘッダに付加したcssだのjsだののリンクが通っていないのが原因らしいが、まあこれはきっとGoogleさんとこのサーバーが落ちているか何かで、放っておけば治るだろうと思い、実際放置していた。
ところが事実はサーバーが落ちてるとかそういうくだらない理由ではなく、実際にリンクが切れていたのである。私はこの事実を先のys_ootaさんのブログで知った。
5月17日の日付である。私はこの記事を7月頃に発見した(笑)。そう、5月のこの時期といえば、ディスクが空を飛んだりリソースが闇に消えたりその他諸々色々あって、人様のサイトを回っているような心の余裕がなかったのである。おかげであれほどお世話になったys_ootaさんのせっかくの記事を見逃してしまうことになった。気がついた時点ですぐに直せば良いのだが、自分の方の記事が「つづく」となっていて「まとめます」とまで書いてある。あー、忘れてた。もーめんどくさっ!(おい)。ということでソース載せることも当分ないだろうし、まいっか、みたいなことで保留とする(おいおい)。
そうして放置されたままさらに長い年月が過ぎた。(おいおいおいおい)
先日、自分の属性の一つがプログラマであることをカミングアウトしたが(カミングアウトかよ)そうなればなったで、色々書きたいネタはある。ソースも表示したい。そこでやっと私のスチームハンマーのように重い腰を上げることになったのである。
リンク先に書かれている通りにヘッダのコードを修正するのだが、エラーが出てうまくいかない。間にリッチテキストエディタを挟んだのがまずいのか変な文字コードが混じっているらしい(←全然学習していないな(笑))。標準テキストに変えてみたが後の祭り。改行コードがいけないのかとそのあたりをいじってみたが効果なし。
結局、ys_ootaさんのところの記事のソースを表示し、ヘッダの該当部分をコピペしたらエラーは無くなり、表示もうまくいった(笑)。(ほんとすいません)
まあ実際HTMLのソースは「見ちゃいやん♪」なものではないので、"Syntax Hilighter"だの"google-code-prettify"だのをご自分のサイトで採用したい方は、ぜひ私のところのソースからもコピペでもなんでもしていただいて結構である。ただしその後、突然パソコンやスマホから煙とかがもくもく出てきたりしても一切責任は取らないのであしからず。あとコピペ、記事や素材はだめだぞ(リンクはいいけど)。これ以上なめこさんが電脳空間に増殖されては困る。
ソースコードを貼ってみるテスト 2 [So-netさん]
※スマートフォンでご覧になっている方へ2016.6.12変更)
本記事はPC版表示でご覧いただくことを推奨いたします。表示の変更は、思いっきり下にスクロールして「表示切替:モバイル|PC」のPCを選択します。スマホ版表示に戻すには、思いっきり下にスクロールして「スマートフォン専用ページを表示」を選択してください。
本記事はPC版表示でご覧いただくことを推奨いたします。表示の変更は、思いっきり下にスクロールして「表示切替:モバイル|PC」のPCを選択します。スマホ版表示に戻すには、思いっきり下にスクロールして「スマートフォン専用ページを表示」を選択してください。
ソースコードを貼ってみるテストからのつづき
C言語がうまく行ったので、今度は調子こいて、iOS、Objective-Cでもハロワー(職安かよ)してみる。
Syntax Highlighter
ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UIViewController @property (weak, nonatomic) IBOutlet UILabel *label; @end ViewController.m #import "ViewController.h" @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.label.text = @"Hello, world!"; } @end
google-code-prettify
ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UIViewController @property (weak, nonatomic) IBOutlet UILabel *label; @end ViewController.m #import "ViewController.h" @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.label.text = @"Hello, world!"; }
Objective-Cに関してはGoogleさんの方はともかく、Syntax Highlighterの方がいまいちさえない。Objective-CはCの継承言語なのでC言語の設定でなんとかなるかと思ったのだが。。。試しにC++の設定にしても同様。
実際リンク先のソースを見てみると、キーワード(予約語)ガチでスタイル設定しているようで、C++はCと共通に扱われている。同じ継承言語のObjective-Cに関しては定義されていない(やはりおぶじぇしーはマイナー言語だたーのかorz。。。)。
さらに試しで、Javaの設定でやってみる。
ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UIViewController @property (weak, nonatomic) IBOutlet UILabel *label; @end ViewController.m #import "ViewController.h" @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.label.text = @"Hello, world!"; } @end
予想通り(笑)、@interfaceは化けてくれたが、他の@始まりは色が地味だ。っていうか、#付きの行もなんか変だし。いやそもそも、系の違う言語で代用するという根性が人の道に外れている(笑)。
調べたらSyntax HighlighterはObjective-c用にはオリジナルとは別個にカスタムの「.js」ファイルをどこかに置いてやらなければならないらしい。だがそれは面倒である。So-netさんブログ(無料バージョン)では、ブログのプリセットの本記事以外、画像、動画、音声しか置くことができない。せっかく前回の方法でそれは回避したのに、ここで別のサーバー(一応Googleサイトとか確保してみたけど)を使用するのであれば元も子もない。
ならば簡単である。リンクではなく、.jsの中身を直接ヘッダに書いてしまえば良い。
やっていらっしゃる方がいた。
BloggerのSyntaxHighlighterでObjective-Cを表示する方法詳細はリンク先を見て頂ければ良いのだが(また人任せかよ)、例によって大量のテキストをこのあいだの下あたりにコピペし、あとは本文の<pre>タグをobjc設定にすれば良い。
その結果が、
ViewController.h #import <UIKit/UIKit.h> @interface ViewController : UIViewController @property (weak, nonatomic) IBOutlet UILabel *label; @end ViewController.m #import "ViewController.h" @implementation ViewController - (void)viewDidLoad { [super viewDidLoad]; self.label.text = @"Hello, world!"; } @end
おおおおおおおおおおっ!(うるさいよ)
素晴らしい!
つづく(次回でまとめます)
ソースコードを貼ってみるテスト [So-netさん]
※スマートフォンでご覧になっている方へ(2016.4.9追記、2016.6.12 blog内で完結することが今さら判明したので変更)
本記事はPC版表示でご覧いただくことを推奨いたします。表示の変更は、思いっきり下にスクロールして「表示切替:モバイル|PC」のPCを選択します。スマホ版表示に戻すには、思いっきり下にスクロールして「スマートフォン専用ページを表示」を選択してください。
一応私は「自称プログラマ」と自称している(←二重表現)ので、かねがねソースコードとか載っけちゃったりなんかしてみようかと思っていたのだが、こんな地味なやつじゃなくて
#include <stdio.h>世の中にはもっとかっこよく表示されているのがある。何せ音声や地図やグーグルさんの盗撮写真(笑)も簡単にWebに埋め込める時代である。こちらもきっと簡単に出来るに違いない。で、検索してみた。
int main(void)
{
printf("Hello, world!");
return 0;
}
色々出てきたが、こちらの記事がずばりはまっているようなので早速試してみることにした。
この方法の素晴らしいところは、ややこしい部分はよそ様のサイトを参照するだけで、「参照します」の記述をこちらのHTMLのデフォに書き込むだけ。つまり、別個にファイルをアップする必要がない、まさに文字通りSo-netさんブログ向けである点である。
詳細はリンク先を見て頂ければ良いのだが(←人任せ(笑))、ものすごくおおざっぱに要約すると、
- 方法として、Syntax Highlighter を使う方法とgoogle-code-prettify を使う方法がある。(どちらも設定のしかたはほぼ同じ。両方いっぺんに設定もできる)
- HTMLの<head>タグにスクリプトを追加する。(So-netさんのブログの場合、デザイン→テンプレート管理→HTML編集で、デフォのHTMLに埋め込んでしまう)
- (google-code-prettifyの場合)同様に<body>タグをちょっと変更する。
- 本文記事で、<pre>タグと適当なパラメータで囲ってコードを記述する。
紆余曲折1
まず一つ目、とりあえずスクリプトを<head>にコピペしたら、どうにも様子がおかしい。ページのヘッダーのバー部分が残念なことになっている。
以前も書いたように、StyleSheetで挫折している私としてはこれはとても歯が立たない。
Safariでぼんやりとソースを見ていたらおかしな部分に気がついた。(下図の43行目以降)
単に色分けが変な部分を見つけただけで、エラーに気づいたわけではない。
<script src="https://google-code-prettify.googlecode.com/svn/loader/run_prettify.js"/script>
の部分がダメらしい。ってかだめなの???(←わかっていない)
なわけで、
<script src="https://google-code-prettify.googlecode.com/svn/loader/run_prettify.js"></script>
としたら、無事ヘッダーの点々々化は解消した。
これに関しては一番大元のネタがミスっていたようで、上記サイトでは既に修正済みである。大元をご覧になる方はご注意いただきたい。
紆余曲折2
43行目以降が通ったら今度はエラー表示が出た。ということはさっきのはエラーじゃ無かったのかよ!?(いやエラーだろっ!)
さきほどの「おおざっぱ要約」の3、ここで具体的に書くと、<body>に「onload="PrettyPrint()"」を付加するのだが、その部分について「ないでんがな」というエラーらしい。しらんがな(笑)。
上記サイトの管理人様にお尋ねしたところ、Safariの仕様とのこと。ご丁寧に参考URLをご紹介いただいた(ありがとうございます。←ってか自分で調べろよ!)。
エラーというよりもワーニングみたいなもののようなので、付加して問題ない、いややはり付加するのが必須のようである。
紆余曲折3
これが一番厄介くんだったのだが、上記スクリプトの問題は概ね解決したのでさっそくハローワールドしてみた。
Syntax Highlighter
// Hello World
#include <stdio.h>
int main() {
printf(@"Hello, world!"\n");
return 0;
}
google-code-prettify
// Hello World
#include <stdio.h>
int main() {
printf(@"Hello, world!"\n");
return 0;
}
え〝っ?
いや、Googleさんの方は良いのだが、Syntax Highlighterが実に悲惨なことに。。。
So-netブログのリッチテキストエディタのHTMLボタンをぽちっと押すと、<pre></pre>内の記述が見事にタグ付きに変更されている。意味ねー。(またもやコピペするのもアレなので、Wikipedia仕様のHello worldをわざわざ手打ちしたのに。。。)
色々試した結果、So-netブログの場合、「リッチテキストエディタを利用する」モードで保存するとこのようなことになるらしい。逆に言えば、<pre></pre>の記述をまっとうに扱いたい場合は、ソースを確認した後「リッチテキストエディタを利用しない」モードで保存しなければならないということである。
保存だけではない、「利用しない」モードから「利用する」モードに変更した段階で既にタグが混入する(そこで保存しなければ良いのだが)。
このあたりも先ほどのサイトの管理人様にお尋ねしたところ(←全部人任せ(酷))、Syntax HighlighterのXMLがそのまま表現できてしまう機能のためとのこと(これも逆に言えばGoogleさんはタグを解釈してくれるということですかね)。
ということでひとまず結論。
- So-netブログでSyntax Highlighterを使用する場合、<pre></pre>内の整形された記述を確認ののち、「リッチテキストエディタを利用しない」モードで保存すること。
- 意地でも「リッチテキストエディタを利用する」モードで保存したい場合は、Syntax Highlighterを使用しない。
2つ書きましたが、まあ同じことを言ってるわけで。。。
さて、以下は成功例である。この記事はここから先は二度とリッチテキストエディタで保存できない。(めんどくさいなあ。。。)
もしも表示が崩れていたら、「なめこさん、やっちまったな(笑)」と生暖かく見守っていただきたい。
Syntax Highlighter
// Hello World #include <stdio.h> int main() { printf(@"Hello, world!"\n"); return 0; }
google-code-prettify
// Hello World #include <stdio.h> int main() { printf(@"Hello, world!"\n"); return 0; }
おーっ!!!
実に素晴らしい!
まあ確かにSyntax Highlighterの方が見栄えはかっこいいが、運用が面倒だな(スマホで表示崩れることがあるそうだし)。
Googleさん、採用ですかね。
(ys_ootaさん、ありがとうございました)
ソースコードを貼ってみるテスト2へつづく
画像公開非公開の謎 [So-netさん]
このSo-netさんのブログは、書いた記事を「下書き」の状態で保持できる(どこのブログもほとんど一緒なのかもしれないが、他を知らないので一応説明しておく)。「下書き」の状態の記事は、アカウントを持っている自分しか見ることができない。「下書き」の状態で完成したと思った段階で、「えいやっ!」と「公開」の状態にすれば、他人、つまりはこれをご覧になっている皆様にお見せすることができる。
記事に貼付けるリソース(画像、動画、音声)も同様で、画像をクリック、もしくはプロフィール経由で見ることができる、画像一覧、例えば今月(2月)分で言えば、
(↑注:モバイルな人は見れません。悪しからず。。。)
このリストにおいて「下書き」で保存された画像に関しては「非公開」となる。
ここに思いもかけない落とし穴がある(笑)。
ある日ふとこの画像一覧を見たら、まだ「公開」するつもりのない画像が一斉に公開されているではないか!(愕)
早速So-netさんに問い合わせたところ、画像一覧において、「下書き」で保存された画像に関しては「非公開」だが、「下書き」に載せる前にアップロードした画像は「公開」になる仕様であるとのことである。
私の記事作成手順として、(地図貼付けとか説明がめんどくさいものは除く)
1)全体の構成を考える(いや、あまり考えてないな)
2)ある程度の内容を文章で適当に「下書き」する。
3)必要な画像を適当に編集する。
4)(手順としてはいささか面倒だが)画像をまとめてアップロードする。
5)アップロードした画像を「下書き」記事の適当なところに貼付けて行く。
6)「下書き」を保存。
7)プレビューで確認。
8)良さげであれば「下書き」を「公開」に変更する。
となる。
この4)〜6)の間がヤバい。
画像一覧から、記事として公開されていない画像が丸見えである。いや別に見られて困る画像は無いのだが。。。
問題はこれだけではない。4)でアップロードした画像を5)で貼付けなかった場合、必要がないと後で判断したとか、単純に貼り忘れたとか、それらの画像が一覧では「公開」のまま残ることになる。
かのDavid Bowieがライブのリハーサルをしているところにたまたま居合わせた人が見物していたら「今すぐ出て行け!」と激怒された、というエピソードをラジオかテレビで聞いたことがある。私はDavid Bowieではないが、やはりまだ見せる意思のないものを見られるのは困る、いや単純に恥ずかしい。。。
「公開」がデフォで下書き保存された画像だけ「非公開」にするよりも、「非公開」がデフォで公開された記事の画像だけ「公開」にする方が実装的には簡単なようにも思えるが、そう話は単純ではないということなんだろうか?「画像一覧」で公開しておいて、記事に載せないような利用方法が他に何かあるということなのだろうか?ちょっと謎である。
まあとりあえずは、絶対見られたくない恥ずかしい画像をうっかり選択しないようにして、一枚一枚アップロードしてマメに「下書き」保存するのが最善だろう。まとめてアップロードは元々めんどくさいのでそれはそれでいいんだが、「下書き」保存が時間かかるのでちょっとだけ鬱である。
「画像一覧」そのものを公開しない設定も勧められたが、画像しか表示されないクリックによる原寸大表示がいまいちしっくり来ない。だが、記事執筆中はそれも有りかもしれない。そうなっていたらすみません。なめこさんはその時間、一生懸命記事書いてます(笑)。
さて、ここで一つ思いついたことがある。
画像一覧において、「下書き」で保存された画像に関しては「非公開」。では同じ画像を別記事で「公開」したらどうなるだろう?
下の画像は、今回の件でテスト用に使用したものである。この画像は別のダミー記事で「下書き」保存してある。だがこの記事では公開されている。画像リストは「表示する」の設定である。
クリックでどうなるかお試しあれ。
ちなみに、画像リストを「表示しない」設定の場合は予想どおりの結果となった。