Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit330530f

Browse files
authored
Add Japanese build support and translate index-ja and intro pages (#84)
* initial commit* initial commit* add html-ja* fix typo* initial commit* review twice* fix anchor* review* add ja
1 parent00e10c6 commit330530f

File tree

9 files changed

+193
-7
lines changed

9 files changed

+193
-7
lines changed

‎.github/workflows/build-and-deploy.yml‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -92,6 +92,11 @@ jobs:
9292
env:
9393
CREATOR_ID:${{ secrets.CREATOR_ID }}
9494

95+
-name:Build Japanese
96+
run:make html-ja
97+
env:
98+
CREATOR_ID:${{ secrets.CREATOR_ID }}
99+
95100
-name:Upload artifact
96101
uses:actions/upload-pages-artifact@v3.0.1
97102
with:

‎Makefile‎

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -76,13 +76,13 @@ html:
7676

7777
.PHONY: html-es
7878
html-es:
79-
$(SPHINXBUILD) -b html -D project="PySDR: Guia de uso para SDR/DSP con Python" -D exclude_patterns=_build,index.rst,content/*,index-nl.rst,content-nl/*,index-fr.rst,content-fr/*,index-ukraine.rst,content-ukraine/*,index-zh.rst,content-zh/* -D master_doc=index-es$(EXTENSIONS).$(BUILDDIR)/es/
79+
$(SPHINXBUILD) -b html -D project="PySDR: Guia de uso para SDR/DSP con Python" -D exclude_patterns=_build,index.rst,content/*,index-nl.rst,content-nl/*,index-fr.rst,content-fr/*,index-ukraine.rst,content-ukraine/*,index-zh.rst,content-zh/*,index-ja.rst,content-ja/* -D master_doc=index-es$(EXTENSIONS).$(BUILDDIR)/es/
8080
@echo
8181
@echo"Spanish Build finished. The HTML pages are in$(BUILDDIR)/es/html."
8282

8383
.PHONY: html-nl
8484
html-nl:
85-
$(SPHINXBUILD) -b html -D project="PySDR: Een handleiding voor SDR en DSP met Python" -D exclude_patterns=_build,index.rst,content/*,index-fr.rst,content-fr/*,index-ukraine.rst,content-ukraine/*,index-zh.rst,content-zh/*,index-es.rst,content-es/* -D master_doc=index-nl$(EXTENSIONS).$(BUILDDIR)/nl/
85+
$(SPHINXBUILD) -b html -D project="PySDR: Een handleiding voor SDR en DSP met Python" -D exclude_patterns=_build,index.rst,content/*,index-fr.rst,content-fr/*,index-ukraine.rst,content-ukraine/*,index-zh.rst,content-zh/*,index-es.rst,content-es/*,index-ja.rst,content-ja/* -D master_doc=index-nl$(EXTENSIONS).$(BUILDDIR)/nl/
8686
@echo
8787
@echo"Dutch Build finished. The HTML pages are in$(BUILDDIR)/nl/html."
8888
@echo translating title of index and content pages
@@ -93,22 +93,28 @@ html-nl:
9393

9494
.PHONY: html-fr
9595
html-fr:
96-
$(SPHINXBUILD) -b html -D project="PySDR : un guide sur SDR et DSP à l'aide de Python" -D exclude_patterns=_build,index.rst,content/*,index-nl.rst,content-nl/*,index-ukraine.rst,content-ukraine/*,index-zh.rst,content-zh/*,index-es.rst,content-es/* -D master_doc=index-fr$(EXTENSIONS).$(BUILDDIR)/fr/
96+
$(SPHINXBUILD) -b html -D project="PySDR : un guide sur SDR et DSP à l'aide de Python" -D exclude_patterns=_build,index.rst,content/*,index-nl.rst,content-nl/*,index-ukraine.rst,content-ukraine/*,index-zh.rst,content-zh/*,index-es.rst,content-es/*,index-ja.rst,content-ja/* -D master_doc=index-fr$(EXTENSIONS).$(BUILDDIR)/fr/
9797
@echo
9898
@echo"French Build finished. The HTML pages are in$(BUILDDIR)/fr/html."
9999

100100
.PHONY: html-ukraine
101101
html-ukraine:
102-
$(SPHINXBUILD) -b html -D project="PySDR: Посібник з SDR та DSP за допомогою Python" -D exclude_patterns=_build,index.rst,content/*,index-fr.rst,content-fr/*,index-nl.rst,content-nl/*,index-zh.rst,content-zh/*,index-es.rst,content-es/* -D master_doc=index-ukraine$(EXTENSIONS).$(BUILDDIR)/ukraine/
102+
$(SPHINXBUILD) -b html -D project="PySDR: Посібник з SDR та DSP за допомогою Python" -D exclude_patterns=_build,index.rst,content/*,index-fr.rst,content-fr/*,index-nl.rst,content-nl/*,index-zh.rst,content-zh/*,index-es.rst,content-es/*,index-ja.rst,content-ja/* -D master_doc=index-ukraine$(EXTENSIONS).$(BUILDDIR)/ukraine/
103103
@echo
104104
@echo"Build finished. The HTML pages are in$(BUILDDIR)/ukraine/html."
105105

106106
.PHONY: html-zh
107107
html-zh:
108-
$(SPHINXBUILD) -b html -D project="PySDR:使用 Python 玩转 SDR 和 DSP" -D exclude_patterns=_build,index.rst,content/*,index-fr.rst,content-fr/*,index-nl.rst,content-nl/*,index-ukraine.rst,content-ukraine/*,index-es.rst,content-es/* -D master_doc=index-zh$(EXTENSIONS).$(BUILDDIR)/zh/
108+
$(SPHINXBUILD) -b html -D project="PySDR:使用 Python 玩转 SDR 和 DSP" -D exclude_patterns=_build,index.rst,content/*,index-fr.rst,content-fr/*,index-nl.rst,content-nl/*,index-ukraine.rst,content-ukraine/*,index-es.rst,content-es/*,index-ja.rst,content-ja/* -D master_doc=index-zh$(EXTENSIONS).$(BUILDDIR)/zh/
109109
@echo
110110
@echo"Build finished. The HTML pages are in$(BUILDDIR)/zh/html."
111111

112+
.PHONY: html-ja
113+
html-ja:
114+
$(SPHINXBUILD) -b html -D project="PySDR: Pythonで学ぶSDRとDSP入門" -D exclude_patterns=_build,index.rst,content/*,index-fr.rst,content-fr/*,index-nl.rst,content-nl/*,index-ukraine.rst,content-ukraine/*,index-es.rst,content-es/*,index-zh.rst,content-zh/* -D master_doc=index-ja$(EXTENSIONS).$(BUILDDIR)/ja/
115+
@echo
116+
@echo"Build finished. The HTML pages are in$(BUILDDIR)/ja/html."
117+
112118
.PHONY: dirhtml
113119
dirhtml:
114120
$(SPHINXBUILD) -b dirhtml$(ALLSPHINXOPTS)$(BUILDDIR)/dirhtml

‎README.md‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ make html-fr
2424
make html-nl
2525
make html-ukraine
2626
make html-zh
27+
make html-ja
2728
```
2829

2930
In_build there should be an index.html that represents the main page of the English site

‎_static/ja.svg‎

Lines changed: 5 additions & 0 deletions
Loading

‎_templates/homepage_ja.html‎

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
<h1style="text-align: center">PySDR: Pythonで学ぶSDRとDSP入門</h1>
2+
3+
<pstyle="text-align: center">
4+
by
5+
<aclass="reference internal"href="content/about_author.html#author-chapter">
6+
<spanclass="std std-ref">Dr. Marc Lichtman</span>
7+
</a>
8+
-
9+
<aclass="reference external"href="mailto:pysdr&#37;&#52;&#48;vt&#46;edu"rel="noopener noreferrer"target="_blank">
10+
pysdr<span>&#64;</span>vt<span>&#46;</span>edu
11+
</a>
12+
</p>
13+
14+
<h4style="line-height: 1.4">
15+
PySDRへようこそ!
16+
PySDRは、豊富な図解、アニメーション、Pythonコード例を用いて、無線通信とソフトウェア無線(Software-Defined Radio、
17+
SDR)についてやさしく解説する、無料のオンライン教材です(※Pythonライブラリではありません!)。
18+
FFT(高速フーリエ変換)からフィルタ設計、デジタル変調、さらにはPythonを使ったSDRの送受信まで、PySDRにお任せください!
19+
</h4>
20+
21+
<h4style="line-height: 1.4">
22+
PySDRの目的は、これまで主に数学中心で扱われ、限られた一部の大学でしか学ぶことのできなかった分野をもっと多くの人が学べるようにすることです。
23+
PySDRの作成に使用されたコンテンツは全てオープンソースで<aclass="reference external"href="https://github.com/777arc/PySDR"rel="noopener noreferrer"target="_blank">こちらに</a>公開されています。
24+
</h4>
25+
26+
<h4>
27+
<aclass="reference internal"href="content-ja/intro.html#intro-chapter"><spanclass="std std-ref">1章: はじめに</span></a>
28+
では、この教材の目的や対象読者について説明しています。
29+
</h4>
30+
31+
<h4>
32+
トーン信号とホワイトガウスノイズで構成された信号を、周波数領域・時間領域で表示する以下のシミュレーションを使って、RF信号処理の雰囲気を簡単に感じてみてください。
33+
</h4>
34+
35+
<div>
36+
<inputtype="range"min="-0.4"max="0.4"step="0.0001"value="0.01"class="slider"id="freq"/>
37+
<spanid="freq_value"></span>
38+
<label>[Hz] - トーン信号の周波数</label>
39+
</div>
40+
<div>
41+
<inputtype="range"min="-20"max="10"step="0.1"value="0"class="slider"id="noise_ampl_dB"/>
42+
<spanid="noise_value"></span>
43+
<label>[dB] - ノイズの振幅</label>
44+
</div>
45+
<div>
46+
<canvaswidth="2048"height="800"id="freq_plot"style="width: 512px; height: 200px; border: 0px; image-rendering: auto"></canvas>
47+
</div>
48+
<br/>
49+
<br/>
50+
<div>
51+
<canvaswidth="2048"height="800"id="time_plot"style="width: 512px; height: 200px; border: 0px; image-rendering: auto"></canvas>
52+
</div>
53+
54+
<script>
55+
homepage_app();
56+
</script>
57+
58+
<br/>

‎_templates/layout.html‎

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,8 @@
8080
<astyle="text-decoration:none"href="https://pysdr.org/fr/index-fr.html"><imgsrc="https://pysdr.org/_static/fr.svg"alt="French"width="20">French</a>&nbsp;&nbsp;
8181
<astyle="text-decoration:none"href="https://pysdr.org/ukraine/index-ukraine.html"><imgsrc="https://pysdr.org/_static/ukrain.svg"alt="Ukrainian"width="20">Ukrainian</a>&nbsp;&nbsp;
8282
<astyle="text-decoration:none"href="https://pysdr.org/zh/index-zh.html"><imgsrc="https://pysdr.org/_static/cn.svg"alt="Chinese"width="20">Chinese</a>&nbsp;&nbsp;
83-
<astyle="text-decoration:none"href="https://pysdr.org/es/index-es.html"><imgsrc="https://pysdr.org/_static/es.svg"alt="Spanish"width="20">Spanish</a>
83+
<astyle="text-decoration:none"href="https://pysdr.org/es/index-es.html"><imgsrc="https://pysdr.org/_static/es.svg"alt="Spanish"width="20">Spanish</a>&nbsp;&nbsp;
84+
<astyle="text-decoration:none"href="https://pysdr.org/ja/index-ja.html"><imgsrc="https://pysdr.org/_static/ja.svg"alt="Japanese"width="20">Japanese</a>
8485
</div>
8586
{% endblock %}
8687

‎conf.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -98,7 +98,7 @@
9898

9999
# List of patterns, relative to source directory, that match files and
100100
# directories to ignore when looking for source files.
101-
exclude_patterns= ['_build','index-fr.rst','content-fr/*','index-nl.rst','content-nl/*','index-ukraine.rst','content-ukraine/*','index-zh.rst','content-zh/*','index-es.rst','content-es/*']
101+
exclude_patterns= ['_build','index-fr.rst','content-fr/*','index-nl.rst','content-nl/*','index-ukraine.rst','content-ukraine/*','index-zh.rst','content-zh/*','index-es.rst','content-es/*','index-ja.rst','content-ja/*']
102102

103103
# The reST default role (used for this markup: `text`) to use for all
104104
# documents.

‎content-ja/intro.rst‎

Lines changed: 97 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,97 @@
1+
.. _intro-chapter:
2+
3+
#############
4+
はじめに
5+
#############
6+
7+
***************************
8+
目的と対象読者
9+
***************************
10+
11+
まずはじめに、いくつかの重要な用語を説明します。
12+
13+
**ソフトウェア無線 (Software-Defined Radio、SDR):**
14+
*概念* としてのSDRとは、従来ハードウェアで行われていた無線通信や高周波(RF)アプリケーションに特有の信号処理作業を、ソフトウェアによって行うことです。
15+
このソフトウェアは汎用コンピュータ(CPU)、FPGA、あるいはGPU上で動作し、リアルタイムアプリケーションや、保存された信号のオフライン処理に利用できます。
16+
類似する用語にsoftware radioやRF digital signal processingがあります。
17+
18+
*物理的な物* としてのSDRは一般的に、アンテナを接続してRF信号を受信し、
19+
そのデジタル化されたRF信号をコンピュータに送信し処理または記録できるデバイスを指します(コンピュータとの通信にはUSB、Ethernet、PCIなどが使用されます)。
20+
多くのSDRは送信機能も備えており、コンピュータがSDRに送った信号を、指定したRF周波数で送信できます。
21+
また、組み込み型のSDRには、オンボードコンピュータが搭載されているものもあります。
22+
23+
24+
**デジタル信号処理 (Digital Signal Processing、DSP):**
25+
信号をデジタル処理すること。ここでは、特にRF信号を対象としています。
26+
27+
この教材は、DSP、SDR、そして無線通信への実践的な入門ガイドとして作られています。
28+
想定している読者は次のような人です:
29+
30+
#. SDRを *使って* 面白いことをしてみたい人
31+
#. Pythonに慣れている人
32+
#. DSPや無線通信、SDRについては比較的初心者の人
33+
#. 数式よりもアニメーションなど視覚的な説明を好む人
34+
#. まず概念を学んだ *あとで* 数式を理解するほうが得意な人
35+
#. 1,000ページの分厚い教科書ではなく、簡明な解説を求めている人
36+
37+
例えば、無線通信関連の仕事に就きたいと考えているコンピュータサイエンス専攻の学生が対象になりますが、プログラミング経験がありSDRを学びたい人なら誰でも活用できます。
38+
そのため、通常のDSPの講義で扱われるような難解な数学に頼ることなく、DSP技術を理解するために必要な理論をカバーしています。
39+
難解な数式を多用する代わりに、概念を伝えるために数多くの図やアニメーションを活用しています。
40+
例えば、下に示したフーリエ級数の複素平面アニメーションのようなものです。
41+
私は、ビジュアルや実践的な演習を通じて概念を学んだ *あとに* 数式を理解するのが最も効果的だと考えています。
42+
アニメーションを多用しているため、PySDRが印刷物としてAmazonで売られることはないでしょう。
43+
44+
..image::../_images/fft_logo_wide.gif
45+
:scale:70%
46+
:align:center
47+
:alt:The PySDR logo created using a Fourier transform
48+
49+
この教材は、DSPやSDRの概念を素早くスムーズに紹介し、読者が賢くDSPを実践し、SDRを使いこなせるようになることを目的としています。
50+
この教材は、全てのDSP/SDR分野を網羅するリファレンステキストを目指しているわけではありません。
51+
そのような優れた教科書はすでに数多く存在しており、例えば `Analog DevicesのSDRの教科書
52+
<https://www.analog.com/en/education/education-library/software-defined-radio-for-engineers.html>`_ と `dspguide.com<http://www.dspguide.com/>`_ が挙げられます。
53+
三角関数の公式やシャノン限界などは、いつでもGoogleを使って思い出せば大丈夫です。
54+
この教材はDSPやSDRの世界への入り口と考えてください。
55+
従来の講義や教科書に比べて、時間もお金もかけずに始められる内容になっています。
56+
57+
基礎的なDSP理論をカバーするために、電気工学分野で一般的な「信号とシステム」という1学期分の内容を、数章に凝縮しています。
58+
DSPの基礎が一通り終わった後はSDRの話題に進みますが、DSPや無線通信に関連する概念も引き続き教材に登場します。
59+
60+
コード例はPythonで提供されています。
61+
これらの例では、配列操作や高度な数値計算のための標準的ライブラリであるNumPyを利用しています。
62+
また、信号や配列、複素数を簡単に可視化できるPythonの描画ライブラリMatplotlibも使用しています。
63+
なお、一般にPythonはC++よりも「遅い」ものの、Python/NumPy内のほとんどの数学関数はC/C++で実装され、高度に最適化されています。
64+
同様に、使用しているSDR APIも、C/C++で書かれた関数やクラスに対するPythonバインディングです。
65+
Pythonの経験があまりない方でも、MATLAB、Ruby、Perlなどに慣れているなら、Pythonの文法に慣れるだけで問題なく取り組めるでしょう。
66+
67+
***************
68+
貢献するには
69+
***************
70+
71+
もしPySDRが役に立ったと感じたら、この教材に興味を持ちそうな同僚や学生、生涯学習者たちにぜひシェアしてください。
72+
また、PySDRのPatreonページ `PySDR Patreon<https://www.patreon.com/PySDR>`_ から寄付を行い、感謝の意を表明することもできます。
73+
寄付をすると、あなたの名前が各ページ左側の章リスト下に掲載されます。
74+
75+
この教材のどこかを読み進め、質問・コメント・提案などを marc@pysdr.org にメールしてくれた場合、それだけであなたはこの教材に貢献したことになります!
76+
さらに、教材のGitHubページ `textbook's GitHub page<https://github.com/777arc/PySDR/tree/master/content>`_ 上で直接ソースを編集することも可能です(変更を加えるとプルリクエストが作成されます)。
77+
バグ修正や改善案について、IssueやPull Request(PR)を送るのも大歓迎です。
78+
価値あるフィードバックや修正を提供してくれた方は、このあとに続く謝辞セクションに永続的に名前を記載します。
79+
Gitの操作に自信がないけれど提案したい内容がある場合には、遠慮なく marc@pysdr.org までメールしてください。
80+
81+
*****************
82+
謝辞
83+
*****************
84+
85+
この教材の一部でも読んでフィードバックを寄せてくださったすべての方々に感謝します。特に以下の皆さまに感謝いたします。
86+
87+
- `Barry Duggan<http://github.com/duggabe>`_
88+
- Matthew Hannon
89+
- James Hayek
90+
- Deidre Stuffer
91+
- Tarik Benaddi (`PySDRをフランス語に翻訳<https://pysdr.org/fr/index-fr.html>`_)
92+
- `Daniel Versluis<https://versd.bitbucket.io/content/about.html>`_ (`PySDRをオランダ語に翻訳<https://pysdr.org/nl/index-nl.html>`_)
93+
- `mrbloom<https://github.com/mrbloom>`_ (`PySDRをウクライナ語に翻訳<https://pysdr.org/ukraine/index-ukraine.html>`_)
94+
- `Yimin Zhao<https://github.com/doctormin>`_ (`PySDRを簡体字中国語に翻訳<https://pysdr.org/zh/index-zh.html>`_)
95+
- `Eduardo Chancay<https://github.com/edulchan>`_ (`PySDRをスペイン語に翻訳<https://pysdr.org/es/index-es.html>`_)
96+
97+
また、すべての `PySDR Patreon<https://www.patreon.com/PySDR>`_ サポーターの皆さまにも感謝いたします!

‎index-ja.rst‎

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
..raw::html
2+
:file: _templates/homepage_ja.html
3+
4+
..raw::html
5+
6+
<details>
7+
<summary><h4style="display:inline;">目次を開く</h4></summary>
8+
9+
..toctree::
10+
:maxdepth:3
11+
:numbered:1
12+
13+
content-ja/intro

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp