• ベストアンサー

英単語中の改行について

アルファベットが連続しているデータをWebの表に入れるとセルの幅が無茶苦茶に壊れてしまいます。 まぁ、IEならスタイルシート等で対応出来るからこの辺の技術的な回避策は置いておくとして。 Webに限らず、ソフト全般で幅を決めてもアルファベット(正確には、一部を除くASCIIコードが連続している場合)だけは、幅一杯で折り返しみたいな事が出来ず、指定された幅を超えて表示するか、幅の前で区切り文字と認識できる文字で折り返す傾向が強い気がするのです。 アルファベットとはその様に扱うのが一般的な物なのでしょうか? 半分愚痴なのですが、幅を指定できる所で指定しているにも関わらず、使用している文字の都合で幅を変更されるのは、コードを書いている側としては使い辛く何故この様な仕様が一般化されているのか、納得出来る理由を探しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.1

英単語を語の途中で改行する場合、文法上(発音上)の規則に従った特定の場所(音節の区切り)のみで区切ることができます。しかし、その「規則」は機械的なものではなく全単語の一覧表でも持っていない限り網羅できないので、次善の策として「あらかじめ区切りであることが認識できるような記号(例えばハイフン)が入っている場合」のみ、その場所で区切るということが行われる場合があります。 ご指摘の内容はそれに相当するかと思われます。

art_labo
質問者

お礼

ありがとうございます。 音で区切るのですか。 それだと、現在のパソコンの辞書では区切れませんね。 質問なのですが、「場所(音節の区切り)のみで区切ることができます。」と言うのは、何処かに記述(ルール)が有るのでしょうか? もし決まりが有るとしたら、全角のアルファベットもちゃんと折り返すべきなのに、その処理を行っているソフトは見受けられませんし、ソフトによって実装も区々なので、対応に苦しみます。 全角に関しては、2バイト文字なので、ネイティブはアルファベットとは認めていないだけかも知れませんが..。

その他の回答 (2)

  • php504
  • ベストアンサー率42% (926/2160)
回答No.3

英単語の途中で改行しない、どうしても改行する場合は音節で改行し単語の途中であることを明示するためにハイフンをつける。 これらは日本語でいえば句読点の直前で改行しないといった禁則処理と同じで昔からある約束事ですね。 禁則処理をソフトに適応するかどうかは作った人の考え方次第なのでバラバラなのはしょうがないと思われます。 。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。。 ↑ブラウザの横幅を狭くするとわかると思いますが日本語でも改行されない場合があります っっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっっ FireFoxだと↑も改行されません

  • xcrOSgS2wY
  • ベストアンサー率50% (1006/1985)
回答No.2

英単語の区切り方に関する詳細は、「hyphenation」で検索すると多数見つかるかと思います。   一例:http://www.hyphenologist.co.uk/book/BOOK-ED3.HTM 全角アルファベットを対象としていない理由やソフトごとの実装の違いの原因は、私には分かりません。(私が実装したソフトであれば説明できるのですが・・・)

関連するQ&A

  • 文字を読み取ったら

    とあるプログラムを作っているのですが、 条件分岐を作るときに 「現在読み取ってる文字が アルファベットならば」 という条件、つまり if(currentChar == アルファベット) ... という条件式を作ろうとしています。 char をアスキーコードに変えて 不等式で 条件を作ることを考えたのですが、 アスキーコードに変える方法がありません。そのようなメソッドはありますか?? あと、アスキーコードに変えずにコンパクトにこの条件式を作る方法等、アドバイスがあればいただけないでしょうか。 お願いします。

    • ベストアンサー
    • Java
  • UTF-8 環境をSJIS化した後の改行コードの取扱がよくわかりません

    RedHat Linux ES4 にて、デフォルトUTF-8の文字コードを以下のサイトの手順に従いSJIS化して使用しています。 (サイトの例ではEUC⇒SJISなのですが) http://www.k5.dion.ne.jp/~whatsup/linux/euc_to_sjis.html その後、Windows上でシェルスクリプトなどを作成し、ASCIIでアップロードして実行すると『:bad interpreter: そのようなファイルやディレクトリはありません』となります。 Webで調べたところ改行コードが正しくないとの事なのですが、どうにか回避することは出来ないでしょうか?

  • 改行入り変数を改行を残したまま改行区切りで配列に入れる方法

    file()関数と同様の事を、ファイル名を指定ではなく変数名を指定して行いたいのですが、explode()関数だと改行(区切り文字)は削除されて配列に格納されてしまいます。とりあえず以下の2つの方法しか思いつかないのですが、どちらが効率的でしょうか? 又、他にもっと良い方法ありましたら教えて欲しいです。お願いします。 方法1 explode後、配列を再ループし末尾に改行コードを付与 方法2 strstrとsubstrで変数をカットしながら配列に格納

    • 締切済み
    • PHP
  • 英語版オフィスワード2007の改行

    英語版オフィスワード2007を英語のOS上で使ってます。英語で仕事することがほとんどなのでそれで十分と思ったのですが、ちょとしたことから、日本語の文書を書かないといけなくなりました。 WEB上IMEで日本語変換してペーストしていますが、ちょっと困ってます。 日本文のなかにたまにアルファベットをハイフンでつなぐ単語がまざっている(日本語訳がないので一般的に英語表記で日本語文書でも書かれている)のですが、ハイフンのあと改行されてしまい例えば5文字位しかないのに次の行に移ってまうぶさいくな書式になってしまったりします。 どうしたらこの改行を回避できますか?

  • EXCELのセル内の文字の折り返しがうまくいかない

    EXCEL2003でセル内で文字の折り返しを指定しているなか、 セルの書式設定で文字の折り返しを選んだのに文字が折り返して表示されません。 折り返しにはなっていますが、行の幅が自動で広がりません。 行の高さの指定も特に指定してないとこのことです(人に質問 されています)。 可能な行もあります。 なので何かが行に対して設定されているのだとは思うのですが 原因が思い浮かばないのです。 ただ、列幅をダブルクリックして自動調整を一度行っておけば、 そのあとはその行も折り返しがされ、行高さも自動調整します。 何かが行に設定されているようですが、 何が考えられるでしょうか? よろしくお願いします。

  • Excel QRコードを読み取り項目毎に分割表示

    製品番号、LOT番号、製造年月日など複数の項目のデータが入ったQRコードがあります。 このQRコードを読み取って、項目毎にセルに入力したいです。 実際にQRコードを読み取ってみると abc0123-456$de0123456789$$$$$$20190201$$$$$$$$$ という様なパターンです。(架空のデータです) [$]というのが区切り文字と思われますので、 一旦データを読み込んだ後で、メニューの[データ]-[区切り位置]とたどって、区切り文字に[$]を指定すれば、それなりに表示出来ることは分かったのですが、 出来れば、特定の列でQRコードを読み取ると同時に、自動的にデータを区切ってそれぞれのセルに入力したいです。 区切り文字が連続している部分が有りますが、当方では必要ありませんので無視したいです。 マクロとかVBとか必要ですか? 出来るだけ具体的な方法を教えて頂けると有り難いです。

  • 表に表示する半角文字の改行について

    はじめまして Webページで表を使って、 データを表示しています。 実装方法は TABLEタグで表を作って TDタグの中にデータを表示させています。 その時に表示させるデータが半角文字の羅列だと 表幅をピクセル指定していても改行されずに 表が大きくなってしまいます。 そこで、半角文字の羅列でも 表幅は固定のままで、全角文字と同じように 改行するにはどうしたらよいのでしょうか どなたかご教授お願いいたします。

    • ベストアンサー
    • HTML
  • 改行コードについて

    Kent-Web(http://www.kent-web.com/)さんのショッピングカートを構築しています。 自分のサーバーでは簡単に構築できるのに、実際に運営するサーバーに移すとInternalServerErrorが出てしまいます。 いろいろ調べた結果、サーバーにアップすると改行部分が化けてきちんと改行されず、エラーが出ていることがわかりました。 FTPエディターなどで直接入力すると動くのですが、手で入力もしてられないので、FTPでアップしたいのですが、改行コードをeucに変換しても、なぜかサーバーに上げると改行コードが狂ってしまっています。 そこで質問なのですが、 1、一般的なサーバーでは、文字コード、改行コードともShift-JISで動く(いわゆるフリースクリプトを持ってきてサーバーに上げても動く)のに、このサーバーでは動かないので、Apacheなりの設定が一般的なサーバーと違うのではないかと考えています。 サーバー管理者にどうするように言えばいいでしょうか。 2、この問題がエディターによるものなのか、FTPクライアントによるものなのかわからないのですが、Shift-JISで書いたものをきちんとeucに変換し、FTPできるエディターとFTPクライアントはないでしょうか。 現在、エディターはViVi、FTPはFFFTPを使っています。 きちんとエディターが変換作業を行えているのかよくわからないです。 以上、よろしくお願いします。

    • ベストアンサー
    • CGI
  • Windows半角ファイル名の順序の規則

    Windows2000やXPを使用しておりますがファイルの一覧表示で、 記号のうち「! # $ % & 」などはコード順どおりなのですが、 「 { } ~ 」などがアルファベットより後に来ないのはなぜでしょうか。 また「 ' - 」などが2文字目に左右されているように見えます。 Windowsのファイル名のソートは半角ならば 大文字小文字の区別の無い、アスキーコード順に等しいなんて今まで勘違いしておりました。 いったいどういう規則性なのか御存知の方、教えて下さい。

  • アスキーコード表を利用した文字列変換について。

    以下の仕様でプログラミングしようとしています。 ・コマンドラインから入力されたアルファベットを受け取り、大文字なら小文字へ、小文字なら大文字へ変換し、表示。 ・アルファベット以外ならそのまま表示 ・日本語は入力禁止 ・文字数が80バイトを超えたらエラーメッセージを表示 メソッドを使えばできるのですが、メソッドを使わず、アスキーコード表を使用してプログラミングする事が条件なのです。 よろしくお願いします。

    • ベストアンサー
    • Java