こんにちは!
エンジニアの皆さんは技術書を買って学習する際、紙の本を使用していますか?
それとも電子書籍を使用していますか?
僕の場合は紙の本を買うことが多いですが、たまにkindleで電子書籍を買って学習しています。
電子書籍でしか手に入らない本(無料のものなど)もあったりして、購入しようと思ったことはあるんじゃないでしょうか。
有名なkindleですが、kindleの電子書籍を使ってプログラミング学習する際、ソースコードの貼り付け時に注意すべき点があります。
※MacのPC版kindleを使用しています。その他の環境では同様の事象が出るかは分かりません。
今回は以下の電子書籍を参考にさせていただき、説明します。
ソースコードをコピペする際の残念な点
僕が確認した限り、ソースコードをコピペする際の注意点は以下です。
注意点
✔︎ 引用タグが自動的に付与されてしまう
✔︎ なぜか改行がされない
✔︎ 不要なスペースが入ることがある
kindleの元のソースコードがこちらです。(実際はインデントが適用されています。)
var http = require('http'); ①
var server = http.createServer(function(req, res){②
参考:JavaScriptエンジニアのためのNode.js入門 Kindle版 (天田士郎)
res.writeHead(200, {'ContentType': 'text/plain'}); ③
res.writeHead(200, {'ContentType': 'text/plain'}); ③
res.write('Hello World');
res.end();
});
server.listen(1234); ④
console.log('サーバを起動しました'); ⑤
Node.jsでHello World
を表示させるためのコードです。(説明のために①②などが含まれていますが、貼り付けてから削除すれば問題ないですよね。)
これをVScodeに貼り付けてみるとこうなります。
var http = require('http'); ①var server = http.createServer(function(req, res){② res.writeHead(200, {'ContentType': 'text/plain'}); ③ res.write('Hello World'); res.end();});server.listen(1234); ④console.log('サーバを起動しました'); ⑤
shiroamada. JavaScript Enjinia No Tameno Nodejs Nyumon (Japanese Edition) (Kindle の位置No.77-81). Kindle 版.
引用タグが自動的に付与されてしまう
埋め込みソースコードの3行目を見ると、元の文にはなかった文字列が追加されているのが分かります。
これは引用タグというもので、ソースコードの貼り付けに限らず、kindle内の文章をコピペしようとすると、自動的に付与される仕様です。
ブログやSNS等に貼り付ける際にはありがたいですが、自己学習する際にはない方がいいですよね。
改行がされない
kindleのソースコードと比較していただければ、一目瞭然ですね。
改行がされず、全て1行にまとめられてしまいました。
なので、貼り付けた後はコードを整形する作業が発生します。。。泣
上記の例ではコードが短いので、そこまで気にならないですが、数十行のコードだとストレスに感じる方もいるかもしれません。
不要なスペースが入ることがある
上記の例では少し分かりづらいのですが、不要なスペースが入ることがあります。
kindleの見た目はスペース1つに見えても、実際は2つだったり、スペースが入っていないと思ったら、入っていたり。
その度にソースの整形が必要になってしまいます。
まとめ
「紙の本をやめて、電子書籍(kindle)を買えば、全ソースを模写する必要がなくなって、勉強の効率化ができる!」と思った方に向けて注意点を書きました。
この事実を知って時は期待を裏切られた気分になりました。笑
世の中そう甘くないということですかね。
最後まで読んでいただき、ありがとうございました!