Closing the last open sketch will quit Arduino."; + _(" " + + "
" + + "Are you sure you want to Quit?" + + "Closing the last open sketch will quit Arduino."); int result = JOptionPane.showOptionDialog(editor, prompt, - "Quit", + _("Quit"), JOptionPane.YES_NO_OPTION, JOptionPane.QUESTION_MESSAGE, null, @@ -896,7 +897,7 @@ protected void rebuildToolbarMenu(JMenu menu) { //System.out.println("rebuilding toolbar menu"); // Add the single "Open" item - item = Editor.newJMenuItem("Open...", 'O'); + item = Editor.newJMenuItem(_("Open..."), 'O'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handleOpenPrompt(); @@ -963,7 +964,7 @@ public void rebuildImportMenu(JMenu importMenu) { File sketchbookLibraries = getSketchbookLibrariesFolder(); boolean found = addLibraries(importMenu, sketchbookLibraries); if (found) { - JMenuItem contrib = new JMenuItem("Contributed"); + JMenuItem contrib = new JMenuItem(_("Contributed")); contrib.setEnabled(false); importMenu.insert(contrib, separatorIndex); importMenu.insertSeparator(separatorIndex); @@ -1087,10 +1088,10 @@ public void actionPerformed(ActionEvent e) { handleOpen(path); } } else { - showWarning("Sketch Does Not Exist", - "The selected sketch no longer exists.\n" + - "You may need to restart Arduino to update\n" + - "the sketchbook menu.", null); + showWarning(_("Sketch Does Not Exist"), + _("The selected sketch no longer exists.\n" + + "You may need to restart Arduino to update\n" + + "the sketchbook menu."), null); } } }; @@ -1116,14 +1117,15 @@ public void actionPerformed(ActionEvent e) { //if (!sanityCheck.equals(list[i])) { if (!Sketch.isSanitaryName(list[i])) { if (!builtOnce) { - String complaining = - "The sketch \"" + list[i] + "\" cannot be used.\n" + - "Sketch names must contain only basic letters and numbers\n" + - "(ASCII-only with no spaces, " + - "and it cannot start with a number).\n" + - "To get rid of this message, remove the sketch from\n" + - entry.getAbsolutePath(); - Base.showMessage("Ignoring sketch with bad name", complaining); + String complaining = I18n.format( + _("The sketch \"{0}\" cannot be used.\n" + + "Sketch names must contain only basic letters and numbers\n" + + "(ASCII-only with no spaces, " + + "and it cannot start with a number).\n" + + "To get rid of this message, remove the sketch from\n" + + "{1}"), list[i], entry.getAbsolutePath() + ); + Base.showMessage(_("Ignoring sketch with bad name"), complaining); } continue; } @@ -1192,11 +1194,13 @@ public void actionPerformed(ActionEvent e) { // if (libraryJar.exists()) { String sanityCheck = Sketch.sanitizeName(potentialName); if (!sanityCheck.equals(potentialName)) { - String mess = - "The library \"" + potentialName + "\" cannot be used.\n" + - "Library names must contain only basic letters and numbers.\n" + - "(ASCII only and no spaces, and it cannot start with a number)"; - Base.showMessage("Ignoring bad library name", mess); + String mess = I18n.format( + _("The library \"{0}\" cannot be used.\n" + + "Library names must contain only basic letters and numbers.\n" + + "(ASCII only and no spaces, and it cannot start with a number)"), + potentialName + ); + Base.showMessage(_("Ignoring bad library name"), mess); continue; } @@ -1421,17 +1425,17 @@ static public File getSettingsFolder() { try { settingsFolder = platform.getSettingsFolder(); } catch (Exception e) { - showError("Problem getting data folder", - "Error getting the Arduino data folder.", e); + showError(_("Problem getting data folder"), + _("Error getting the Arduino data folder."), e); } } // create the folder if it doesn't exist already if (!settingsFolder.exists()) { if (!settingsFolder.mkdirs()) { - showError("Settings issues", - "Arduino cannot run because it could not\n" + - "create a folder to store your settings.", null); + showError(_("Settings issues"), + _("Arduino cannot run because it could not\n" + + "create a folder to store your settings."), null); } } return settingsFolder; @@ -1591,9 +1595,9 @@ protected File getDefaultSketchbookFolder() { } if (!result) { - showError("You forgot your sketchbook", - "Arduino cannot run because it could not\n" + - "create a folder to store your sketchbook.", null); + showError(_("You forgot your sketchbook"), + _("Arduino cannot run because it could not\n" + + "create a folder to store your sketchbook."), null); } return sketchbookFolder; @@ -1612,7 +1616,7 @@ static protected File promptSketchbookLocation() { return folder; } - String prompt = "Select (or create new) folder for sketches..."; + String prompt = _("Select (or create new) folder for sketches..."); folder = Base.selectFolder(prompt, null, null); if (folder == null) { System.exit(0); @@ -1636,8 +1640,8 @@ static public void openURL(String url) { platform.openURL(url); } catch (Exception e) { - showWarning("Problem Opening URL", - "Could not open the URL\n" + url, e); + showWarning(_("Problem Opening URL"), + I18n.format(_("Could not open the URL\n{0}"), url), e); } } @@ -1660,8 +1664,8 @@ static public void openFolder(File file) { platform.openFolder(file); } catch (Exception e) { - showWarning("Problem Opening Folder", - "Could not open the folder\n" + file.getAbsolutePath(), e); + showWarning(_("Problem Opening Folder"), + I18n.format(_("Could not open the folder\n{0}"), file.getAbsolutePath()), e); } } @@ -1774,36 +1778,36 @@ static public void showReference(String filename) { static public void showGettingStarted() { if (Base.isMacOS()) { - Base.showReference("Guide_MacOSX.html"); + Base.showReference(_("Guide_MacOSX.html")); } else if (Base.isWindows()) { - Base.showReference("Guide_Windows.html"); + Base.showReference(_("Guide_Windows.html")); } else { - Base.openURL("http://www.arduino.cc/playground/Learning/Linux"); + Base.openURL(_("http://www.arduino.cc/playground/Learning/Linux")); } } static public void showReference() { - showReference("index.html"); + showReference(_("index.html")); } static public void showEnvironment() { - showReference("Guide_Environment.html"); + showReference(_("Guide_Environment.html")); } static public void showPlatforms() { - showReference("environment" + File.separator + "platforms.html"); + showReference(_("environment") + File.separator + _("platforms.html")); } static public void showTroubleshooting() { - showReference("Guide_Troubleshooting.html"); + showReference(_("Guide_Troubleshooting.html")); } static public void showFAQ() { - showReference("FAQ.html"); + showReference(_("FAQ.html")); } @@ -1815,7 +1819,7 @@ static public void showFAQ() { * much of a bummer, but something to notify the user about. */ static public void showMessage(String title, String message) { - if (title == null) title = "Message"; + if (title == null) title = _("Message"); if (commandLine) { System.out.println(title + ": " + message); @@ -1831,7 +1835,7 @@ static public void showMessage(String title, String message) { * Non-fatal error message with optional stack trace side dish. */ static public void showWarning(String title, String message, Exception e) { - if (title == null) title = "Warning"; + if (title == null) title = _("Warning"); if (commandLine) { System.out.println(title + ": " + message); @@ -1850,7 +1854,7 @@ static public void showWarning(String title, String message, Exception e) { * for errors that allow P5 to continue running. */ static public void showError(String title, String message, Throwable e) { - if (title == null) title = "Error"; + if (title == null) title = _("Error"); if (commandLine) { System.err.println(title + ": " + message); @@ -2183,14 +2187,22 @@ static public void saveFile(String str, File file) throws IOException { if (file.exists()) { boolean result = file.delete(); if (!result) { - throw new IOException("Could not remove old version of " + - file.getAbsolutePath()); + throw new IOException( + I18n.format( + _("Could not remove old version of {0}"), + file.getAbsolutePath() + ) + ); } } boolean result = temp.renameTo(file); if (!result) { - throw new IOException("Could not replace " + - file.getAbsolutePath()); + throw new IOException( + I18n.format( + _("Could not replace {0}"), + file.getAbsolutePath() + ) + ); } } @@ -2228,7 +2240,7 @@ static public void removeDir(File dir) { if (dir.exists()) { removeDescendants(dir); if (!dir.delete()) { - System.err.println("Could not delete " + dir); + System.err.println(I18n.format(_("Could not delete {0}"), dir)); } } } @@ -2251,7 +2263,7 @@ static public void removeDescendants(File dir) { if (!Preferences.getBoolean("compiler.save_build_files")) { if (!dead.delete()) { // temporarily disabled - System.err.println("Could not delete " + dead); + System.err.println(I18n.format(_("Could not delete {0}"), dead)); } } } else { diff --git a/app/src/processing/app/Editor.java b/app/src/processing/app/Editor.java index 6de3c48826f..ba2e641c2d6 100644 --- a/app/src/processing/app/Editor.java +++ b/app/src/processing/app/Editor.java @@ -26,6 +26,7 @@ import processing.app.syntax.*; import processing.app.tools.*; import processing.core.*; +import static processing.app.I18n._; import java.awt.*; import java.awt.datatransfer.*; @@ -370,13 +371,14 @@ public boolean importData(JComponent src, Transferable transferable) { } if (successful == 0) { - statusError("No files were added to the sketch."); + statusError(_("No files were added to the sketch.")); } else if (successful == 1) { - statusNotice("One file added to the sketch."); + statusNotice(_("One file added to the sketch.")); } else { - statusNotice(successful + " files added to the sketch."); + statusNotice( + I18n.format(_("{0} files added to the sketch."), successful)); } return true; } @@ -487,9 +489,9 @@ protected void buildMenuBar() { protected JMenu buildFileMenu() { JMenuItem item; - fileMenu = new JMenu("File"); + fileMenu = new JMenu(_("File")); - item = newJMenuItem("New", 'N'); + item = newJMenuItem(_("New"), 'N'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { base.handleNew(); @@ -497,7 +499,7 @@ public void actionPerformed(ActionEvent e) { }); fileMenu.add(item); - item = Editor.newJMenuItem("Open...", 'O'); + item = Editor.newJMenuItem(_("Open..."), 'O'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { base.handleOpenPrompt(); @@ -506,18 +508,18 @@ public void actionPerformed(ActionEvent e) { fileMenu.add(item); if (sketchbookMenu == null) { - sketchbookMenu = new JMenu("Sketchbook"); + sketchbookMenu = new JMenu(_("Sketchbook")); base.rebuildSketchbookMenu(sketchbookMenu); } fileMenu.add(sketchbookMenu); if (examplesMenu == null) { - examplesMenu = new JMenu("Examples"); + examplesMenu = new JMenu(_("Examples")); base.rebuildExamplesMenu(examplesMenu); } fileMenu.add(examplesMenu); - item = Editor.newJMenuItem("Close", 'W'); + item = Editor.newJMenuItem(_("Close"), 'W'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { base.handleClose(Editor.this); @@ -525,7 +527,7 @@ public void actionPerformed(ActionEvent e) { }); fileMenu.add(item); - saveMenuItem = newJMenuItem("Save", 'S'); + saveMenuItem = newJMenuItem(_("Save"), 'S'); saveMenuItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handleSave(false); @@ -533,7 +535,7 @@ public void actionPerformed(ActionEvent e) { }); fileMenu.add(saveMenuItem); - saveAsMenuItem = newJMenuItemShift("Save As...", 'S'); + saveAsMenuItem = newJMenuItemShift(_("Save As..."), 'S'); saveAsMenuItem.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handleSaveAs(); @@ -541,7 +543,7 @@ public void actionPerformed(ActionEvent e) { }); fileMenu.add(saveAsMenuItem); - item = newJMenuItem("Upload", 'U'); + item = newJMenuItem(_("Upload"), 'U'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handleExport(false); @@ -549,7 +551,7 @@ public void actionPerformed(ActionEvent e) { }); fileMenu.add(item); - item = newJMenuItemShift("Upload Using Programmer", 'U'); + item = newJMenuItemShift(_("Upload Using Programmer"), 'U'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handleExport(true); @@ -559,7 +561,7 @@ public void actionPerformed(ActionEvent e) { fileMenu.addSeparator(); - item = newJMenuItemShift("Page Setup", 'P'); + item = newJMenuItemShift(_("Page Setup"), 'P'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handlePageSetup(); @@ -567,7 +569,7 @@ public void actionPerformed(ActionEvent e) { }); fileMenu.add(item); - item = newJMenuItem("Print", 'P'); + item = newJMenuItem(_("Print"), 'P'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handlePrint(); @@ -579,7 +581,7 @@ public void actionPerformed(ActionEvent e) { if (!Base.isMacOS()) { fileMenu.addSeparator(); - item = newJMenuItem("Preferences", ','); + item = newJMenuItem(_("Preferences"), ','); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { base.handlePrefs(); @@ -589,7 +591,7 @@ public void actionPerformed(ActionEvent e) { fileMenu.addSeparator(); - item = newJMenuItem("Quit", 'Q'); + item = newJMenuItem(_("Quit"), 'Q'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { base.handleQuit(); @@ -603,9 +605,9 @@ public void actionPerformed(ActionEvent e) { protected JMenu buildSketchMenu() { JMenuItem item; - sketchMenu = new JMenu("Sketch"); + sketchMenu = new JMenu(_("Sketch")); - item = newJMenuItem("Verify / Compile", 'R'); + item = newJMenuItem(_("Verify / Compile"), 'R'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handleRun(false); @@ -632,12 +634,12 @@ public void actionPerformed(ActionEvent e) { sketchMenu.addSeparator(); if (importMenu == null) { - importMenu = new JMenu("Import Library..."); + importMenu = new JMenu(_("Import Library...")); base.rebuildImportMenu(importMenu); } sketchMenu.add(importMenu); - item = newJMenuItem("Show Sketch Folder", 'K'); + item = newJMenuItem(_("Show Sketch Folder"), 'K'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { Base.openFolder(sketch.getFolder()); @@ -646,7 +648,7 @@ public void actionPerformed(ActionEvent e) { sketchMenu.add(item); item.setEnabled(Base.openFolderAvailable()); - item = new JMenuItem("Add File..."); + item = new JMenuItem(_("Add File...")); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { sketch.handleAddFile(); @@ -659,13 +661,13 @@ public void actionPerformed(ActionEvent e) { protected JMenu buildToolsMenu() { - toolsMenu = new JMenu("Tools"); + toolsMenu = new JMenu(_("Tools")); JMenu menu = toolsMenu; JMenuItem item; addInternalTools(menu); - item = newJMenuItemShift("Serial Monitor", 'M'); + item = newJMenuItemShift(_("Serial Monitor"), 'M'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handleSerial(); @@ -685,7 +687,7 @@ public void actionPerformed(ActionEvent e) { // API, if possible (i.e. if it supports custom actions, etc.) if (boardsMenu == null) { - boardsMenu = new JMenu("Board"); + boardsMenu = new JMenu(_("Board")); base.rebuildBoardsMenu(boardsMenu); } menu.add(boardsMenu); @@ -693,17 +695,16 @@ public void actionPerformed(ActionEvent e) { if (serialMenuListener == null) serialMenuListener = new SerialMenuListener(); if (serialMenu == null) - serialMenu = new JMenu("Serial Port"); + serialMenu = new JMenu(_("Serial Port")); populateSerialMenu(); menu.add(serialMenu); - menu.addSeparator(); - JMenu programmerMenu = new JMenu("Programmer"); + JMenu programmerMenu = new JMenu(_("Programmer")); base.rebuildProgrammerMenu(programmerMenu); menu.add(programmerMenu); - item = new JMenuItem("Burn Bootloader"); + item = new JMenuItem(_("Burn Bootloader")); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handleBurnBootloader(); @@ -927,18 +928,18 @@ public void actionPerformed(ActionEvent e) { protected void selectSerialPort(String name) { if(serialMenu == null) { - System.out.println("serialMenu is null"); + System.out.println(_("serialMenu is null")); return; } if (name == null) { - System.out.println("name is null"); + System.out.println(_("name is null")); return; } JCheckBoxMenuItem selection = null; for (int i = 0; i < serialMenu.getItemCount(); i++) { JCheckBoxMenuItem item = ((JCheckBoxMenuItem)serialMenu.getItem(i)); if (item == null) { - System.out.println("name is null"); + System.out.println(_("name is null")); continue; } item.setState(false); @@ -990,7 +991,7 @@ protected void populateSerialMenu() { catch (Exception exception) { - System.out.println("error retrieving port list"); + System.out.println(_("error retrieving port list")); exception.printStackTrace(); } @@ -1001,12 +1002,12 @@ protected void populateSerialMenu() { //serialMenu.addSeparator(); //serialMenu.add(item); } - - + + protected JMenu buildHelpMenu() { // To deal with a Mac OS X 10.5 bug, add an extra space after the name // so that the OS doesn't try to insert its slow help menu. - JMenu menu = new JMenu("Help "); + JMenu menu = new JMenu(_("Help")); JMenuItem item; /* @@ -1045,7 +1046,7 @@ public void actionPerformed(ActionEvent e) { menu.add(item); */ - item = new JMenuItem("Getting Started"); + item = new JMenuItem(_("Getting Started")); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { Base.showGettingStarted(); @@ -1053,7 +1054,7 @@ public void actionPerformed(ActionEvent e) { }); menu.add(item); - item = new JMenuItem("Environment"); + item = new JMenuItem(_("Environment")); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { Base.showEnvironment(); @@ -1061,7 +1062,7 @@ public void actionPerformed(ActionEvent e) { }); menu.add(item); - item = new JMenuItem("Troubleshooting"); + item = new JMenuItem(_("Troubleshooting")); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { Base.showTroubleshooting(); @@ -1069,7 +1070,7 @@ public void actionPerformed(ActionEvent e) { }); menu.add(item); - item = new JMenuItem("Reference"); + item = new JMenuItem(_("Reference")); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { Base.showReference(); @@ -1077,7 +1078,7 @@ public void actionPerformed(ActionEvent e) { }); menu.add(item); - item = newJMenuItemShift("Find in Reference", 'F'); + item = newJMenuItemShift(_("Find in Reference"), 'F'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (textarea.isSelectionActive()) { @@ -1087,7 +1088,7 @@ public void actionPerformed(ActionEvent e) { }); menu.add(item); - item = new JMenuItem("Frequently Asked Questions"); + item = new JMenuItem(_("Frequently Asked Questions")); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { Base.showFAQ(); @@ -1095,10 +1096,10 @@ public void actionPerformed(ActionEvent e) { }); menu.add(item); - item = new JMenuItem("Visit Arduino.cc"); + item = new JMenuItem(_("Visit Arduino.cc")); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { - Base.openURL("http://arduino.cc/"); + Base.openURL(_("http://arduino.cc/")); } }); menu.add(item); @@ -1106,7 +1107,7 @@ public void actionPerformed(ActionEvent e) { // macosx already has its own about menu if (!Base.isMacOS()) { menu.addSeparator(); - item = new JMenuItem("About Arduino"); + item = new JMenuItem(_("About Arduino")); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { base.handleAbout(); @@ -1120,14 +1121,14 @@ public void actionPerformed(ActionEvent e) { protected JMenu buildEditMenu() { - JMenu menu = new JMenu("Edit"); + JMenu menu = new JMenu(_("Edit")); JMenuItem item; - undoItem = newJMenuItem("Undo", 'Z'); + undoItem = newJMenuItem(_("Undo"), 'Z'); undoItem.addActionListener(undoAction = new UndoAction()); menu.add(undoItem); - redoItem = newJMenuItem("Redo", 'Y'); + redoItem = newJMenuItem(_("Redo"), 'Y'); redoItem.addActionListener(redoAction = new RedoAction()); menu.add(redoItem); @@ -1135,7 +1136,7 @@ protected JMenu buildEditMenu() { // TODO "cut" and "copy" should really only be enabled // if some text is currently selected - item = newJMenuItem("Cut", 'X'); + item = newJMenuItem(_("Cut"), 'X'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handleCut(); @@ -1143,7 +1144,7 @@ public void actionPerformed(ActionEvent e) { }); menu.add(item); - item = newJMenuItem("Copy", 'C'); + item = newJMenuItem(_("Copy"), 'C'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { textarea.copy(); @@ -1151,7 +1152,7 @@ public void actionPerformed(ActionEvent e) { }); menu.add(item); - item = newJMenuItemShift("Copy for Forum", 'C'); + item = newJMenuItemShift(_("Copy for Forum"), 'C'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // SwingUtilities.invokeLater(new Runnable() { @@ -1163,7 +1164,7 @@ public void actionPerformed(ActionEvent e) { }); menu.add(item); - item = newJMenuItemAlt("Copy as HTML", 'C'); + item = newJMenuItemAlt(_("Copy as HTML"), 'C'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { // SwingUtilities.invokeLater(new Runnable() { @@ -1175,7 +1176,7 @@ public void actionPerformed(ActionEvent e) { }); menu.add(item); - item = newJMenuItem("Paste", 'V'); + item = newJMenuItem(_("Paste"), 'V'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { textarea.paste(); @@ -1184,7 +1185,7 @@ public void actionPerformed(ActionEvent e) { }); menu.add(item); - item = newJMenuItem("Select All", 'A'); + item = newJMenuItem(_("Select All"), 'A'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { textarea.selectAll(); @@ -1194,7 +1195,7 @@ public void actionPerformed(ActionEvent e) { menu.addSeparator(); - item = newJMenuItem("Comment/Uncomment", '/'); + item = newJMenuItem(_("Comment/Uncomment"), '/'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handleCommentUncomment(); @@ -1202,7 +1203,7 @@ public void actionPerformed(ActionEvent e) { }); menu.add(item); - item = newJMenuItem("Increase Indent", ']'); + item = newJMenuItem(_("Increase Indent"), ']'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handleIndentOutdent(true); @@ -1210,7 +1211,7 @@ public void actionPerformed(ActionEvent e) { }); menu.add(item); - item = newJMenuItem("Decrease Indent", '['); + item = newJMenuItem(_("Decrease Indent"), '['); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { handleIndentOutdent(false); @@ -1220,7 +1221,7 @@ public void actionPerformed(ActionEvent e) { menu.addSeparator(); - item = newJMenuItem("Find...", 'F'); + item = newJMenuItem(_("Find..."), 'F'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (find == null) { @@ -1235,7 +1236,7 @@ public void actionPerformed(ActionEvent e) { // TODO find next should only be enabled after a // search has actually taken place - item = newJMenuItem("Find Next", 'G'); + item = newJMenuItem(_("Find Next"), 'G'); item.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if (find != null) { @@ -1322,7 +1323,7 @@ protected void updateUndoState() { } else { this.setEnabled(false); undoItem.setEnabled(false); - undoItem.setText("Undo"); + undoItem.setText(_("Undo")); putValue(Action.NAME, "Undo"); if (sketch != null) { sketch.setModified(false); // 0107 @@ -1357,7 +1358,7 @@ protected void updateRedoState() { } else { this.setEnabled(false); redoItem.setEnabled(false); - redoItem.setText("Redo"); + redoItem.setText(_("Redo")); putValue(Action.NAME, "Redo"); } } @@ -1797,15 +1798,17 @@ protected void handleFindReference() { String text = textarea.getSelectedText().trim(); if (text.length() == 0) { - statusNotice("First select a word to find in the reference."); + statusNotice(_("First select a word to find in the reference.")); } else { String referenceFile = PdeKeywords.getReference(text); //System.out.println("reference file is " + referenceFile); if (referenceFile == null) { - statusNotice("No reference available for \"" + text + "\""); + statusNotice( + I18n.format(_("No reference available for \"{0}\""), text) + ); } else { - Base.showReference(referenceFile + ".html"); + Base.showReference(I18n.format(_("{0}.html"), referenceFile)); } } } @@ -1822,7 +1825,7 @@ public void handleRun(final boolean verbose) { internalCloseRunner(); running = true; toolbar.activate(EditorToolbar.RUN); - status.progress("Compiling sketch..."); + status.progress(_("Compiling sketch...")); // do this to advance/clear the terminal window / dos prompt / etc for (int i = 0; i < 10; i++) System.out.println(); @@ -1843,7 +1846,7 @@ public void run() { try { sketch.prepare(); sketch.build(false); - statusNotice("Done compiling."); + statusNotice(_("Done compiling.")); } catch (Exception e) { status.unprogress(); statusError(e); @@ -1860,7 +1863,7 @@ public void run() { try { sketch.prepare(); sketch.build(true); - statusNotice("Done compiling."); + statusNotice(_("Done compiling.")); } catch (Exception e) { status.unprogress(); statusError(e); @@ -1952,11 +1955,11 @@ protected boolean checkModified() { // As of Processing 1.0.10, this always happens immediately. // http://dev.processing.org/bugs/show_bug.cgi?id=1456 - String prompt = "Save changes to " + sketch.getName() + "? "; + String prompt = I18n.format(_("Save changes to \"{0}\"? "), sketch.getName()); if (!Base.isMacOS()) { int result = - JOptionPane.showConfirmDialog(this, prompt, "Close", + JOptionPane.showConfirmDialog(this, prompt, _("Close"), JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.QUESTION_MESSAGE); @@ -1985,18 +1988,18 @@ protected boolean checkModified() { // Pane formatting adapted from the quaqua guide // http://www.randelshofer.ch/quaqua/guide/joptionpane.html JOptionPane pane = - new JOptionPane(" " + - "
" + - "Do you want to save changes to this sketchIf you don't save, your changes will be lost.", + new JOptionPane(_(" " + + "
" + + "Do you want to save changes to this sketchIf you don't save, your changes will be lost."),
JOptionPane.QUESTION_MESSAGE);
String[] options = new String[] {
- "Save", "Cancel", "Don't Save"
+ _("Save"), _("Cancel"), _("Don't Save")
};
pane.setOptions(options);
@@ -2068,24 +2071,27 @@ protected boolean handleOpenInternal(String path) {
} else if (altInoFile.exists()) {
path = altInoFile.getAbsolutePath();
} else if (!path.endsWith(".ino") && !path.endsWith(".pde")) {
- Base.showWarning("Bad file selected",
- "Processing can only open its own sketches\n" +
- "and other files ending in .ino or .pde", null);
+ Base.showWarning(_("Bad file selected"),
+ _("Processing can only open its own sketches\n" +
+ "and other files ending in .ino or .pde"), null);
return false;
} else {
String properParent =
fileName.substring(0, fileName.length() - 4);
- Object[] options = { "OK", "Cancel" };
- String prompt =
- "The file \"" + fileName + "\" needs to be inside\n" +
- "a sketch folder named \"" + properParent + "\".\n" +
- "Create this folder, move the file, and continue?";
+ Object[] options = { _("OK"), _("Cancel") };
+ String prompt = I18n.format(
+ _("The file \"{0}\" needs to be inside\n" +
+ "a sketch folder named \"{1}\".\n" +
+ "Create this folder, move the file, and continue?"),
+ fileName,
+ properParent
+ );
int result = JOptionPane.showOptionDialog(this,
prompt,
- "Moving",
+ _("Moving"),
JOptionPane.YES_NO_OPTION,
JOptionPane.QUESTION_MESSAGE,
null,
@@ -2096,15 +2102,19 @@ protected boolean handleOpenInternal(String path) {
// create properly named folder
File properFolder = new File(file.getParent(), properParent);
if (properFolder.exists()) {
- Base.showWarning("Error",
- "A folder named \"" + properParent + "\" " +
- "already exists. Can't open sketch.", null);
+ Base.showWarning(_("Error"),
+ I18n.format(
+ _("A folder named \"{0}\" already exists. " +
+ "Can't open sketch."),
+ properParent
+ ),
+ null);
return false;
}
if (!properFolder.mkdirs()) {
//throw new IOException("Couldn't create sketch folder");
- Base.showWarning("Error",
- "Could not create the sketch folder.", null);
+ Base.showWarning(_("Error"),
+ _("Could not create the sketch folder."), null);
return false;
}
// copy the sketch inside
@@ -2113,7 +2123,7 @@ protected boolean handleOpenInternal(String path) {
try {
Base.copyFile(origPdeFile, properPdeFile);
} catch (IOException e) {
- Base.showWarning("Error", "Could not copy to a proper location.", e);
+ Base.showWarning(_("Error"), _("Could not copy to a proper location."), e);
return false;
}
@@ -2131,12 +2141,18 @@ protected boolean handleOpenInternal(String path) {
try {
sketch = new Sketch(this, path);
} catch (IOException e) {
- Base.showWarning("Error", "Could not create the sketch.", e);
+ Base.showWarning(_("Error"), _("Could not create the sketch."), e);
return false;
}
header.rebuild();
// Set the title of the window to "sketch_070752a - Processing 0126"
- setTitle(sketch.getName() + " | Arduino " + Base.VERSION_NAME);
+ setTitle(
+ I18n.format(
+ _("{0} | Arduino {1}"),
+ sketch.getName(),
+ Base.VERSION_NAME
+ )
+ );
// Disable untitled setting from previous document, if any
untitled = false;
@@ -2189,12 +2205,12 @@ public void run() {
protected boolean handleSave2() {
toolbar.activate(EditorToolbar.SAVE);
- statusNotice("Saving...");
+ statusNotice(_("Saving..."));
boolean saved = false;
try {
saved = sketch.save();
if (saved)
- statusNotice("Done Saving.");
+ statusNotice(_("Done Saving."));
else
statusEmpty();
// rebuild sketch menu in case a save-as was forced
@@ -2227,16 +2243,16 @@ public boolean handleSaveAs() {
//SwingUtilities.invokeLater(new Runnable() {
//public void run() {
- statusNotice("Saving...");
+ statusNotice(_("Saving..."));
try {
if (sketch.saveAs()) {
- statusNotice("Done Saving.");
+ statusNotice(_("Done Saving."));
// Disabling this for 0125, instead rebuild the menu inside
// the Save As method of the Sketch object, since that's the
// only one who knows whether something was renamed.
//sketchbook.rebuildMenusAsync();
} else {
- statusNotice("Save Canceled.");
+ statusNotice(_("Save Canceled."));
return false;
}
} catch (Exception e) {
@@ -2261,11 +2277,12 @@ public boolean serialPrompt() {
String result = (String)
JOptionPane.showInputDialog(this,
- "Serial port " +
- Preferences.get("serial.port") +
- " not found.\n" +
- "Retry the upload with another serial port?",
- "Serial port not found",
+ I18n.format(
+ _("Serial port {0} not found.\n" +
+ "Retry the upload with another serial port?"),
+ Preferences.get("serial.port")
+ ),
+ "Serial port not found",
JOptionPane.PLAIN_MESSAGE,
null,
names,
@@ -2296,7 +2313,7 @@ synchronized public void handleExport(final boolean usingProgrammer) {
//if (!handleExportCheckModified()) return;
toolbar.activate(EditorToolbar.EXPORT);
console.clear();
- status.progress("Uploading to I/O Board...");
+ status.progress(_("Uploading to I/O Board..."));
new Thread(usingProgrammer ? exportAppHandler : exportHandler).start();
}
@@ -2313,7 +2330,7 @@ public void run() {
boolean success = sketch.exportApplet(false);
if (success) {
- statusNotice("Done uploading.");
+ statusNotice(_("Done uploading."));
} else {
// error message will already be visible
}
@@ -2321,7 +2338,7 @@ public void run() {
populateSerialMenu();
if (serialMenu.getItemCount() == 0) statusError(e);
else if (serialPrompt()) run();
- else statusNotice("Upload canceled.");
+ else statusNotice(_("Upload canceled."));
} catch (RunnerException e) {
//statusError("Error during upload.");
//e.printStackTrace();
@@ -2349,7 +2366,7 @@ public void run() {
boolean success = sketch.exportApplet(true);
if (success) {
- statusNotice("Done uploading.");
+ statusNotice(_("Done uploading."));
} else {
// error message will already be visible
}
@@ -2357,7 +2374,7 @@ public void run() {
populateSerialMenu();
if (serialMenu.getItemCount() == 0) statusError(e);
else if (serialPrompt()) run();
- else statusNotice("Upload canceled.");
+ else statusNotice(_("Upload canceled."));
} catch (RunnerException e) {
//statusError("Error during upload.");
//e.printStackTrace();
@@ -2383,10 +2400,10 @@ public void run() {
protected boolean handleExportCheckModified() {
if (!sketch.isModified()) return true;
- Object[] options = { "OK", "Cancel" };
+ Object[] options = { _("OK"), _("Cancel") };
int result = JOptionPane.showOptionDialog(this,
- "Save changes before export?",
- "Save",
+ _("Save changes before export?"),
+ _("Save"),
JOptionPane.OK_CANCEL_OPTION,
JOptionPane.QUESTION_MESSAGE,
null,
@@ -2400,7 +2417,7 @@ protected boolean handleExportCheckModified() {
// why it's not CANCEL_OPTION is beyond me (at least on the mac)
// but f-- it.. let's get this shite done..
//} else if (result == JOptionPane.CANCEL_OPTION) {
- statusNotice("Export canceled, changes must first be saved.");
+ statusNotice(_("Export canceled, changes must first be saved."));
//toolbar.clear();
return false;
}
@@ -2422,23 +2439,23 @@ public void handleSerial() {
protected void handleBurnBootloader() {
console.clear();
- statusNotice("Burning bootloader to I/O Board (this may take a minute)...");
+ statusNotice(_("Burning bootloader to I/O Board (this may take a minute)..."));
SwingUtilities.invokeLater(new Runnable() {
public void run() {
try {
Uploader uploader = new AvrdudeUploader();
if (uploader.burnBootloader()) {
- statusNotice("Done burning bootloader.");
+ statusNotice(_("Done burning bootloader."));
} else {
- statusError("Error while burning bootloader.");
+ statusError(_("Error while burning bootloader."));
// error message will already be visible
}
} catch (RunnerException e) {
- statusError("Error while burning bootloader.");
+ statusError(_("Error while burning bootloader."));
e.printStackTrace();
//statusError(e);
} catch (Exception e) {
- statusError("Error while burning bootloader.");
+ statusError(_("Error while burning bootloader."));
e.printStackTrace();
}
}});
@@ -2465,7 +2482,7 @@ public void handlePageSetup() {
* Handler for File → Print.
*/
public void handlePrint() {
- statusNotice("Printing...");
+ statusNotice(_("Printing..."));
//printerJob = null;
if (printerJob == null) {
printerJob = PrinterJob.getPrinterJob();
@@ -2482,14 +2499,14 @@ public void handlePrint() {
if (printerJob.printDialog()) {
try {
printerJob.print();
- statusNotice("Done printing.");
+ statusNotice(_("Done printing."));
} catch (PrinterException pe) {
- statusError("Error while printing.");
+ statusError(_("Error while printing."));
pe.printStackTrace();
}
} else {
- statusNotice("Printing canceled.");
+ statusNotice(_("Printing canceled."));
}
//printerJob = null; // clear this out?
}
@@ -2537,7 +2554,7 @@ public void statusError(Exception e) {
}
}
if (line < 0 || line >= textarea.getLineCount()) {
- System.err.println("Bad error line: " + line);
+ System.err.println(I18n.format(_("Bad error line: {0}"), line));
} else {
textarea.select(textarea.getLineStartOffset(line),
textarea.getLineStopOffset(line) - 1);
@@ -2606,7 +2623,7 @@ class TextAreaPopup extends JPopupMenu {
private String clickedURL;
public TextAreaPopup() {
- openURLItem = new JMenuItem("Open URL");
+ openURLItem = new JMenuItem(_("Open URL"));
openURLItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
Base.openURL(clickedURL);
@@ -2617,7 +2634,7 @@ public void actionPerformed(ActionEvent e) {
openURLItemSeparator = new JSeparator();
add(openURLItemSeparator);
- cutItem = new JMenuItem("Cut");
+ cutItem = new JMenuItem(_("Cut"));
cutItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
handleCut();
@@ -2625,7 +2642,7 @@ public void actionPerformed(ActionEvent e) {
});
add(cutItem);
- copyItem = new JMenuItem("Copy");
+ copyItem = new JMenuItem(_("Copy"));
copyItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
handleCopy();
@@ -2633,7 +2650,7 @@ public void actionPerformed(ActionEvent e) {
});
add(copyItem);
- discourseItem = new JMenuItem("Copy for Forum");
+ discourseItem = new JMenuItem(_("Copy for Forum"));
discourseItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
handleDiscourseCopy();
@@ -2641,7 +2658,7 @@ public void actionPerformed(ActionEvent e) {
});
add(discourseItem);
- discourseItem = new JMenuItem("Copy as HTML");
+ discourseItem = new JMenuItem(_("Copy as HTML"));
discourseItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
handleHTMLCopy();
@@ -2649,7 +2666,7 @@ public void actionPerformed(ActionEvent e) {
});
add(discourseItem);
- JMenuItem item = new JMenuItem("Paste");
+ JMenuItem item = new JMenuItem(_("Paste"));
item.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
handlePaste();
@@ -2657,7 +2674,7 @@ public void actionPerformed(ActionEvent e) {
});
add(item);
- item = new JMenuItem("Select All");
+ item = new JMenuItem(_("Select All"));
item.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
handleSelectAll();
@@ -2667,7 +2684,7 @@ public void actionPerformed(ActionEvent e) {
addSeparator();
- item = new JMenuItem("Comment/Uncomment");
+ item = new JMenuItem(_("Comment/Uncomment"));
item.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
handleCommentUncomment();
@@ -2675,7 +2692,7 @@ public void actionPerformed(ActionEvent e) {
});
add(item);
- item = new JMenuItem("Increase Indent");
+ item = new JMenuItem(_("Increase Indent"));
item.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
handleIndentOutdent(true);
@@ -2683,7 +2700,7 @@ public void actionPerformed(ActionEvent e) {
});
add(item);
- item = new JMenuItem("Decrease Indent");
+ item = new JMenuItem(_("Decrease Indent"));
item.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
handleIndentOutdent(false);
@@ -2693,7 +2710,7 @@ public void actionPerformed(ActionEvent e) {
addSeparator();
- referenceItem = new JMenuItem("Find in Reference");
+ referenceItem = new JMenuItem(_("Find in Reference"));
referenceItem.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
handleFindReference();
diff --git a/app/src/processing/app/EditorConsole.java b/app/src/processing/app/EditorConsole.java
index 38cf00fc2ed..591b758da64 100644
--- a/app/src/processing/app/EditorConsole.java
+++ b/app/src/processing/app/EditorConsole.java
@@ -22,6 +22,7 @@
*/
package processing.app;
+import static processing.app.I18n._;
import java.awt.*;
import java.awt.event.*;
@@ -143,9 +144,8 @@ public EditorConsole(Editor editor) {
stderrFile = new FileOutputStream(errFile);
}
} catch (IOException e) {
- Base.showWarning("Console Error",
- "A problem occurred while trying to open the\n" +
- "files used to store the console output.", e);
+ Base.showWarning(_("Console Error"),
+ _("A problem occurred while trying to open the\nfiles used to store the console output."), e);
}
consoleOut = new PrintStream(new EditorConsoleStream(false));
consoleErr = new PrintStream(new EditorConsoleStream(true));
diff --git a/app/src/processing/app/EditorHeader.java b/app/src/processing/app/EditorHeader.java
index d40eddacf51..a331dc4c089 100644
--- a/app/src/processing/app/EditorHeader.java
+++ b/app/src/processing/app/EditorHeader.java
@@ -22,6 +22,7 @@
*/
package processing.app;
+import static processing.app.I18n._;
import java.awt.*;
import java.awt.event.*;
@@ -288,7 +289,7 @@ public void actionPerformed(ActionEvent e) {
*/
//item = new JMenuItem("New Tab");
- item = Editor.newJMenuItemShift("New Tab", 'N');
+ item = Editor.newJMenuItemShift(_("New Tab"), 'N');
item.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
editor.getSketch().handleNewCode();
@@ -296,7 +297,7 @@ public void actionPerformed(ActionEvent e) {
});
menu.add(item);
- item = new JMenuItem("Rename");
+ item = new JMenuItem(_("Rename"));
item.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
editor.getSketch().handleRenameCode();
@@ -310,7 +311,7 @@ public void actionPerformed(ActionEvent e) {
});
menu.add(item);
- item = new JMenuItem("Delete");
+ item = new JMenuItem(_("Delete"));
item.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
editor.getSketch().handleDeleteCode();
@@ -322,7 +323,7 @@ public void actionPerformed(ActionEvent e) {
// KeyEvent.VK_LEFT and VK_RIGHT will make Windows beep
- item = new JMenuItem("Previous Tab");
+ item = new JMenuItem(_("Previous Tab"));
KeyStroke ctrlAltLeft =
KeyStroke.getKeyStroke(KeyEvent.VK_LEFT, Editor.SHORTCUT_ALT_KEY_MASK);
item.setAccelerator(ctrlAltLeft);
@@ -336,7 +337,7 @@ public void actionPerformed(ActionEvent e) {
*/
menu.add(item);
- item = new JMenuItem("Next Tab");
+ item = new JMenuItem(_("Next Tab"));
KeyStroke ctrlAltRight =
KeyStroke.getKeyStroke(KeyEvent.VK_RIGHT, Editor.SHORTCUT_ALT_KEY_MASK);
item.setAccelerator(ctrlAltRight);
diff --git a/app/src/processing/app/EditorToolbar.java b/app/src/processing/app/EditorToolbar.java
index 6b04aa2d98f..e7b8d3752d8 100644
--- a/app/src/processing/app/EditorToolbar.java
+++ b/app/src/processing/app/EditorToolbar.java
@@ -22,6 +22,7 @@
*/
package processing.app;
+import static processing.app.I18n._;
import java.awt.*;
import java.awt.event.*;
@@ -37,12 +38,12 @@ public class EditorToolbar extends JComponent implements MouseInputListener, Key
/** Rollover titles for each button. */
static final String title[] = {
- "Verify", "Upload", "New", "Open", "Save", "Serial Monitor"
+ _("Verify"), _("Upload"), _("New"), _("Open"), _("Save"), _("Serial Monitor")
};
/** Titles for each button when the shift key is pressed. */
static final String titleShift[] = {
- "Verify", "Upload Using Programmer", "New Editor Window", "Open in Another Window", "Save", "Serial Monitor"
+ _("Verify"), _("Upload Using Programmer"), _("New Editor Window"), _("Open in Another Window"), _("Save"), _("Serial Monitor")
};
static final int BUTTON_COUNT = title.length;
diff --git a/app/src/processing/app/FindReplace.java b/app/src/processing/app/FindReplace.java
index 112eca3ade1..95ae7e7cdb7 100644
--- a/app/src/processing/app/FindReplace.java
+++ b/app/src/processing/app/FindReplace.java
@@ -22,6 +22,7 @@
*/
package processing.app;
+import static processing.app.I18n._;
import java.awt.*;
import java.awt.event.*;
@@ -75,9 +76,9 @@ public FindReplace(Editor editor) {
Container pain = getContentPane();
pain.setLayout(null);
- JLabel findLabel = new JLabel("Find:");
+ JLabel findLabel = new JLabel(_("Find:"));
Dimension d0 = findLabel.getPreferredSize();
- JLabel replaceLabel = new JLabel("Replace with:");
+ JLabel replaceLabel = new JLabel(_("Replace with:"));
Dimension d1 = replaceLabel.getPreferredSize();
pain.add(findLabel);
@@ -117,7 +118,7 @@ public void focusLost(FocusEvent e) {
d1.width, d1.height);
//ignoreCase = true;
- ignoreCaseBox = new JCheckBox("Ignore Case");
+ ignoreCaseBox = new JCheckBox(_("Ignore Case"));
ignoreCaseBox.addActionListener(new ActionListener() {
public void actionPerformed(ActionEvent e) {
ignoreCase = ignoreCaseBox.isSelected();
@@ -133,16 +134,16 @@ public void actionPerformed(ActionEvent e) {
// ordering is different on mac versus pc
if (Base.isMacOS()) {
- buttons.add(replaceAllButton = new JButton("Replace All"));
- buttons.add(replaceButton = new JButton("Replace"));
- buttons.add(replaceFindButton = new JButton("Replace & Find"));
- buttons.add(findButton = new JButton("Find"));
+ buttons.add(replaceAllButton = new JButton(_("Replace All")));
+ buttons.add(replaceButton = new JButton(_("Replace")));
+ buttons.add(replaceFindButton = new JButton(_("Replace & Find")));
+ buttons.add(findButton = new JButton(_("Find")));
} else {
- buttons.add(findButton = new JButton("Find"));
- buttons.add(replaceFindButton = new JButton("Replace & Find"));
- buttons.add(replaceButton = new JButton("Replace"));
- buttons.add(replaceAllButton = new JButton("Replace All"));
+ buttons.add(findButton = new JButton(_("Find")));
+ buttons.add(replaceFindButton = new JButton(_("Replace & Find")));
+ buttons.add(replaceButton = new JButton(_("Replace")));
+ buttons.add(replaceAllButton = new JButton(_("Replace All")));
}
pain.add(buttons);
diff --git a/app/src/processing/app/I18n.java b/app/src/processing/app/I18n.java
new file mode 100644
index 00000000000..0e3396a2797
--- /dev/null
+++ b/app/src/processing/app/I18n.java
@@ -0,0 +1,33 @@
+/*
+ * by Shigeru KANEMOTO at SWITCHSCIENCE.
+ *
+ * Extract strings to be translated by:
+ * % xgettext -L Java --from-code=utf-8 -k_ -d Resources_ja *.java
+ * Extract and merge by:
+ * % xgettext -j -L Java --from-code=utf-8 -k_ -d Resources_ja *.java
+ *
+ * Edit "Resources_ja.po".
+ * Convert to the properties file format by:
+ * % msgcat -p Resources_ja.po > Resources_ja.properties
+ */
+
+package processing.app;
+import java.util.*;
+import java.text.MessageFormat;
+
+public class I18n {
+ private static ResourceBundle i18n = ResourceBundle.getBundle("processing.app.Resources");
+
+ public static String _(String s) {
+ try {
+ return i18n.getString(s);
+ }
+ catch (MissingResourceException e) {
+ return s;
+ }
+ }
+
+ public static String format(String fmt, Object ... args) {
+ return MessageFormat.format(fmt, args);
+ }
+}
diff --git a/app/src/processing/app/Platform.java b/app/src/processing/app/Platform.java
index 9fd0fd972f2..1fcdb899edd 100644
--- a/app/src/processing/app/Platform.java
+++ b/app/src/processing/app/Platform.java
@@ -21,6 +21,7 @@
*/
package processing.app;
+import static processing.app.I18n._;
import java.io.File;
@@ -163,10 +164,8 @@ public int unsetenv(String variable) {
protected void showLauncherWarning() {
- Base.showWarning("No launcher available",
- "Unspecified platform, no launcher available.\n" +
- "To enable opening URLs or folders, add a \n" +
- "\"launcher=/path/to/app\" line to preferences.txt",
+ Base.showWarning(_("No launcher available"),
+ _("Unspecified platform, no launcher available.\nTo enable opening URLs or folders, add a \n\"launcher=/path/to/app\" line to preferences.txt"),
null);
}
-}
\ No newline at end of file
+}
diff --git a/app/src/processing/app/Preferences.java b/app/src/processing/app/Preferences.java
index f98fc9df681..5572c62d00c 100644
--- a/app/src/processing/app/Preferences.java
+++ b/app/src/processing/app/Preferences.java
@@ -32,6 +32,7 @@
import processing.app.syntax.*;
import processing.core.*;
+import static processing.app.I18n._;
@@ -72,11 +73,11 @@ public class Preferences {
// prompt text stuff
- static final String PROMPT_YES = "Yes";
- static final String PROMPT_NO = "No";
- static final String PROMPT_CANCEL = "Cancel";
- static final String PROMPT_OK = "OK";
- static final String PROMPT_BROWSE = "Browse";
+ static final String PROMPT_YES = _("Yes");
+ static final String PROMPT_NO = _("No");
+ static final String PROMPT_CANCEL = _("Cancel");
+ static final String PROMPT_OK = _("OK");
+ static final String PROMPT_BROWSE = _("Browse");
/**
* Standardized width for buttons. Mac OS X 10.3 wants 70 as its default,
@@ -144,8 +145,8 @@ static protected void init(String commandLinePrefs) {
try {
load(Base.getLibStream("preferences.txt"));
} catch (Exception e) {
- Base.showError(null, "Could not read default settings.\n" +
- "You'll need to reinstall Arduino.", e);
+ Base.showError(null, _("Could not read default settings.\n" +
+ "You'll need to reinstall Arduino."), e);
}
// check for platform-specific properties in the defaults
@@ -174,9 +175,11 @@ static protected void init(String commandLinePrefs) {
load(new FileInputStream(commandLinePrefs));
} catch (Exception poe) {
- Base.showError("Error",
- "Could not read preferences from " +
- commandLinePrefs, poe);
+ Base.showError(_("Error"),
+ I18n.format(
+ _("Could not read preferences from {0}"),
+ commandLinePrefs
+ ), poe);
}
} else if (!Base.isCommandLine()) {
// next load user preferences file
@@ -193,11 +196,13 @@ static protected void init(String commandLinePrefs) {
load(new FileInputStream(preferencesFile));
} catch (Exception ex) {
- Base.showError("Error reading preferences",
- "Error reading the preferences file. " +
- "Please delete (or move)\n" +
- preferencesFile.getAbsolutePath() +
- " and restart Arduino.", ex);
+ Base.showError(_("Error reading preferences"),
+ I18n.format(
+ _("Error reading the preferences file. " +
+ "Please delete (or move)\n" +
+ "{0} and restart Arduino."),
+ preferencesFile.getAbsolutePath()
+ ), ex);
}
}
}
@@ -209,7 +214,7 @@ public Preferences() {
// setup dialog for the prefs
//dialog = new JDialog(editor, "Preferences", true);
- dialog = new JFrame("Preferences");
+ dialog = new JFrame(_("Preferences"));
dialog.setResizable(false);
Container pain = dialog.getContentPane();
@@ -229,7 +234,7 @@ public Preferences() {
// Sketchbook location:
// [...............................] [ Browse ]
- label = new JLabel("Sketchbook location:");
+ label = new JLabel(_("Sketchbook location:"));
pain.add(label);
d = label.getPreferredSize();
label.setBounds(left, top, d.width, d.height);
@@ -244,7 +249,7 @@ public Preferences() {
public void actionPerformed(ActionEvent e) {
File dflt = new File(sketchbookLocationField.getText());
File file =
- Base.selectFolder("Select new sketchbook location", dflt, dialog);
+ Base.selectFolder(_("Select new sketchbook location"), dflt, dialog);
if (file != null) {
sketchbookLocationField.setText(file.getAbsolutePath());
}
@@ -268,11 +273,11 @@ public void actionPerformed(ActionEvent e) {
// Editor font size [ ]
Container box = Box.createHorizontalBox();
- label = new JLabel("Editor font size: ");
+ label = new JLabel(_("Editor font size: "));
box.add(label);
fontSizeField = new JTextField(4);
box.add(fontSizeField);
- label = new JLabel(" (requires restart of Arduino)");
+ label = new JLabel(_(" (requires restart of Arduino)"));
box.add(label);
pain.add(box);
d = box.getPreferredSize();
@@ -285,11 +290,11 @@ public void actionPerformed(ActionEvent e) {
// Show verbose output during: [ ] compilation [ ] upload
box = Box.createHorizontalBox();
- label = new JLabel("Show verbose output during: ");
+ label = new JLabel(_("Show verbose output during: "));
box.add(label);
- verboseCompilationBox = new JCheckBox("compilation ");
+ verboseCompilationBox = new JCheckBox(_("compilation "));
box.add(verboseCompilationBox);
- verboseUploadBox = new JCheckBox("upload");
+ verboseUploadBox = new JCheckBox(_("upload"));
box.add(verboseUploadBox);
pain.add(box);
d = box.getPreferredSize();
@@ -300,7 +305,7 @@ public void actionPerformed(ActionEvent e) {
// [ ] Delete previous applet or application folder on export
deletePreviousBox =
- new JCheckBox("Delete previous applet or application folder on export");
+ new JCheckBox(_("Delete previous applet or application folder on export"));
pain.add(deletePreviousBox);
d = deletePreviousBox.getPreferredSize();
deletePreviousBox.setBounds(left, top, d.width + 10, d.height);
@@ -310,7 +315,7 @@ public void actionPerformed(ActionEvent e) {
// [ ] Use external editor
- externalEditorBox = new JCheckBox("Use external editor");
+ externalEditorBox = new JCheckBox(_("Use external editor"));
pain.add(externalEditorBox);
d = externalEditorBox.getPreferredSize();
externalEditorBox.setBounds(left, top, d.width + 10, d.height);
@@ -320,7 +325,7 @@ public void actionPerformed(ActionEvent e) {
// [ ] Check for updates on startup
- checkUpdatesBox = new JCheckBox("Check for updates on startup");
+ checkUpdatesBox = new JCheckBox(_("Check for updates on startup"));
pain.add(checkUpdatesBox);
d = checkUpdatesBox.getPreferredSize();
checkUpdatesBox.setBounds(left, top, d.width + 10, d.height);
@@ -329,7 +334,7 @@ public void actionPerformed(ActionEvent e) {
// [ ] Update sketch files to new extension on save (.pde -> .ino)
- updateExtensionBox = new JCheckBox("Update sketch files to new extension on save (.pde -> .ino)");
+ updateExtensionBox = new JCheckBox(_("Update sketch files to new extension on save (.pde -> .ino)"));
pain.add(updateExtensionBox);
d = updateExtensionBox.getPreferredSize();
updateExtensionBox.setBounds(left, top, d.width + 10, d.height);
@@ -340,7 +345,7 @@ public void actionPerformed(ActionEvent e) {
if (Base.isWindows()) {
autoAssociateBox =
- new JCheckBox("Automatically associate .ino files with Arduino");
+ new JCheckBox(_("Automatically associate .ino files with Arduino"));
pain.add(autoAssociateBox);
d = autoAssociateBox.getPreferredSize();
autoAssociateBox.setBounds(left, top, d.width + 10, d.height);
@@ -351,7 +356,7 @@ public void actionPerformed(ActionEvent e) {
// More preferences are in the ...
- label = new JLabel("More preferences can be edited directly in the file");
+ label = new JLabel(_("More preferences can be edited directly in the file"));
pain.add(label);
d = label.getPreferredSize();
label.setForeground(Color.gray);
@@ -380,7 +385,7 @@ public void mouseExited(MouseEvent e) {
right = Math.max(right, left + d.width);
top += d.height;
- label = new JLabel("(edit only when Arduino is not running)");
+ label = new JLabel(_("(edit only when Arduino is not running)"));
pain.add(label);
d = label.getPreferredSize();
label.setForeground(Color.gray);
@@ -528,7 +533,7 @@ protected void applyFrame() {
set("editor.font", PApplet.join(pieces, ','));
} catch (Exception e) {
- System.err.println("ignoring invalid font size " + newSizeText);
+ System.err.println(I18n.format(_("ignoring invalid font size {0}"), newSizeText));
}
if (autoAssociateBox != null) {
diff --git a/app/src/processing/app/Resources.java b/app/src/processing/app/Resources.java
new file mode 100644
index 00000000000..18d81d7ad52
--- /dev/null
+++ b/app/src/processing/app/Resources.java
@@ -0,0 +1,13 @@
+/*
+ * by Shigeru KANEMOTO at SWITCHSCIENCE.
+ * on 2011-10-15
+ */
+
+package processing.app;
+import java.util.ListResourceBundle;
+
+public class Resources extends ListResourceBundle {
+ protected Object[][] getContents() {
+ return new Object[][] {}; // Empty
+ }
+}
diff --git a/app/src/processing/app/Resources_ja.po b/app/src/processing/app/Resources_ja.po
new file mode 100644
index 00000000000..730eb86ac31
--- /dev/null
+++ b/app/src/processing/app/Resources_ja.po
@@ -0,0 +1,1507 @@
+# Japanese language resource for the Arduino IDE.
+# Copyright (C) 2011 switch-science.com
+# This file is distributed under the same license as the Arduino IDE package.
+# Shigeru KANEMOTO Closing the last open sketch will quit Arduino."
+msgstr ""
+
+#: Base.java:779 Editor.java:594
+msgid "Quit"
+msgstr "終了"
+
+#: Base.java:900 Editor.java:502
+msgid "Open..."
+msgstr "開く..."
+
+#: Base.java:967
+msgid "Contributed"
+msgstr "ユーザ提供"
+
+#: Base.java:1091
+msgid "Sketch Does Not Exist"
+msgstr "スケッチが存在しません。"
+
+#: Base.java:1092
+msgid ""
+"The selected sketch no longer exists.\n"
+"You may need to restart Arduino to update\n"
+"the sketchbook menu."
+msgstr ""
+"選択したスケッチが存在しません。\n"
+"スケッチブックメニューを更新するにはArduino IDEを再起動して下さい。"
+
+#: Base.java:1121
+#, java-format
+msgid ""
+"The sketch \"{0}\" cannot be used.\n"
+"Sketch names must contain only basic letters and numbers\n"
+"(ASCII-only with no spaces, and it cannot start with a number).\n"
+"To get rid of this message, remove the sketch from\n"
+"{1}"
+msgstr ""
+"「{0}」という名前をスケッチに付けることはできません。\n"
+"スケッチ名には半角文字と数字のみが使用可能です。\n"
+"(ASCII文字のみ、スペースを除きます。数字で始まる名前は使えません。)\n"
+"このメッセージを表示しないようにするには、「{1}」からスケッチを削除\n"
+"して下さい。"
+
+#: Base.java:1128
+msgid "Ignoring sketch with bad name"
+msgstr "使用できない名前のスケッチは無視します。"
+
+#: Base.java:1198
+#, java-format
+msgid ""
+"The library \"{0}\" cannot be used.\n"
+"Library names must contain only basic letters and numbers.\n"
+"(ASCII only and no spaces, and it cannot start with a number)"
+msgstr ""
+"「{0}」という名前のライブラリは使用できません。\n"
+"ライブラリ名には半角文字と数字のみが使用可能です。\n"
+"(ASCII文字のみ、スペースを除きます。数字で始まる名前は使えません。)"
+
+#: Base.java:1203
+msgid "Ignoring bad library name"
+msgstr "使用できないファイル名のライブラリは無視します。"
+
+#: Base.java:1428
+msgid "Problem getting data folder"
+msgstr "データフォルダを読み込めません。"
+
+#: Base.java:1429
+msgid "Error getting the Arduino data folder."
+msgstr "Arduino IDEデータフォルダを読み込めません。"
+
+#: Base.java:1436
+msgid "Settings issues"
+msgstr "設定に関する問題"
+
+#: Base.java:1437
+msgid ""
+"Arduino cannot run because it could not\n"
+"create a folder to store your settings."
+msgstr ""
+"設定を保存するためのフォルダを作成できないため、動作を停止します。"
+
+#: Base.java:1598
+msgid "You forgot your sketchbook"
+msgstr "スケッチブックをどこかにやっちゃいましたね。"
+
+#: Base.java:1599
+msgid ""
+"Arduino cannot run because it could not\n"
+"create a folder to store your sketchbook."
+msgstr "スケッチブックを保存するフォルダを作成できないため、動作を停止します。"
+
+#: Base.java:1619
+msgid "Select (or create new) folder for sketches..."
+msgstr "スケッチを保存するフォルダを選択するか作成してください。"
+
+#: Base.java:1643
+msgid "Problem Opening URL"
+msgstr "指定のURLを開くことができませんでした。"
+
+#: Base.java:1644
+#, java-format
+msgid ""
+"Could not open the URL\n"
+"{0}"
+msgstr ""
+"URL「{0}」を開くことができませんでした。"
+
+#: Base.java:1667
+msgid "Problem Opening Folder"
+msgstr "フォルダを開くことができませんでした。"
+
+#: Base.java:1668
+#, java-format
+msgid ""
+"Could not open the folder\n"
+"{0}"
+msgstr ""
+"フォルダ「{0}」を開くことができませんでした。"
+
+#: Base.java:1781
+msgid "Guide_MacOSX.html"
+msgstr ""
+
+#: Base.java:1783
+msgid "Guide_Windows.html"
+msgstr ""
+
+#: Base.java:1785
+msgid "http://www.arduino.cc/playground/Learning/Linux"
+msgstr ""
+
+#: Base.java:1790
+msgid "index.html"
+msgstr ""
+
+#: Base.java:1795
+msgid "Guide_Environment.html"
+msgstr ""
+
+#: Base.java:1800
+msgid "environment"
+msgstr ""
+
+#: Base.java:1800
+msgid "platforms.html"
+msgstr ""
+
+#: Base.java:1805
+msgid "Guide_Troubleshooting.html"
+msgstr ""
+
+#: Base.java:1810
+msgid "FAQ.html"
+msgstr ""
+
+#: Base.java:1822
+msgid "Message"
+msgstr "メッセージ"
+
+#: Base.java:1838
+msgid "Warning"
+msgstr "警告"
+
+#: Base.java:2192
+#, java-format
+msgid "Could not remove old version of {0}"
+msgstr "「{0}」の古いバージョンを削除できませんでした。"
+
+#: Base.java:2202
+#, java-format
+msgid "Could not replace {0}"
+msgstr "「{0}」を置き換える事ができませんでした。"
+
+#: Base.java:2243 Base.java:2266
+#, java-format
+msgid "Could not delete {0}"
+msgstr "「{0}」を削除できませんでした。"
+
+#: EditorToolbar.java:41 EditorToolbar.java:46
+msgid "Verify"
+msgstr "検証"
+
+#: EditorToolbar.java:41 Editor.java:546
+msgid "Upload"
+msgstr "マイコンボードに書き込む"
+
+#: EditorToolbar.java:41 Editor.java:494
+msgid "New"
+msgstr "新規ファイル"
+
+#: EditorToolbar.java:41
+msgid "Open"
+msgstr "開く"
+
+#: EditorToolbar.java:41 EditorToolbar.java:46 Editor.java:530
+#: Editor.java:2002 Editor.java:2406
+msgid "Save"
+msgstr "保存"
+
+#: EditorToolbar.java:41 EditorToolbar.java:46 Editor.java:670
+msgid "Serial Monitor"
+msgstr "シリアルモニタ"
+
+#: EditorToolbar.java:46 Editor.java:554
+msgid "Upload Using Programmer"
+msgstr "書込装置を使って書き込む"
+
+#: EditorToolbar.java:46
+msgid "New Editor Window"
+msgstr "新規ウィンドウ"
+
+#: EditorToolbar.java:46
+msgid "Open in Another Window"
+msgstr "新規ウィンドウでファイルを開く"
+
+#: Serial.java:147
+#, java-format
+msgid ""
+"Serial port ''{0}'' already in use. Try quiting any programs that may be "
+"using it."
+msgstr ""
+"シリアルポート「{0}」は、ほかのアプリケーションが使用中です。"
+"シリアルポートを使っている可能性のあるアプリケーションを終了してみてください。"
+
+#: Serial.java:154
+#, java-format
+msgid "Error opening serial port ''{0}''."
+msgstr "シリアルポート「{0}」が開けません。"
+
+#: Serial.java:167
+#, java-format
+msgid ""
+"Serial port ''{0}'' not found. Did you select the right one from the Tools > "
+"Serial Port menu?"
+msgstr ""
+"シリアルポート「{0}」が存在しません。"
+"「ツール」メニューの「シリアルポート」で、"
+"正しいシリアルポートを選んでありますか?"
+
+#: Serial.java:424
+#, java-format
+msgid ""
+"readBytesUntil() byte buffer is too small for the {0} bytes up to and "
+"including char {1}"
+msgstr ""
+"readBytesUntil()で文字「{1}」が見つかるまで読み込もうとしましたが、バッファの長さ{0}バイトでは足りません。"
+
+#: Serial.java:567
+#, java-format
+msgid "Error inside Serial.{0}()"
+msgstr "Serial.{0}()でエラー"
+
+#: Theme.java:52
+msgid ""
+"Could not read color theme settings.\n"
+"You'll need to reinstall Processing."
+msgstr ""
+"カラーテーマの設定を読み込めません。\n"
+"Arduino IDEを再インストールしてください。"
+
+#: EditorHeader.java:292
+msgid "New Tab"
+msgstr "新規タブ"
+
+#: EditorHeader.java:300
+msgid "Rename"
+msgstr "名前を変更"
+
+#: EditorHeader.java:314 Sketch.java:595
+msgid "Delete"
+msgstr "削除"
+
+#: EditorHeader.java:326
+msgid "Previous Tab"
+msgstr "前のタブ"
+
+#: EditorHeader.java:340
+msgid "Next Tab"
+msgstr "次のタブ"
+
+#: SerialMonitor.java:91
+msgid "Send"
+msgstr "送信"
+
+#: SerialMonitor.java:108
+msgid "Autoscroll"
+msgstr "自動スクロール"
+
+#: SerialMonitor.java:110
+msgid "No line ending"
+msgstr "改行なし"
+
+#: SerialMonitor.java:110
+msgid "Newline"
+msgstr "LFのみ"
+
+#: SerialMonitor.java:110
+msgid "Carriage return"
+msgstr "CRのみ"
+
+#: SerialMonitor.java:110
+msgid "Both NL & CR"
+msgstr "CRおよびLF"
+
+#: SerialMonitor.java:128 SerialMonitor.java:131
+msgid " baud"
+msgstr " bps"
+
+#: FindReplace.java:79
+msgid "Find:"
+msgstr "検索テキスト:"
+
+#: FindReplace.java:81
+msgid "Replace with:"
+msgstr "置換テキスト:"
+
+#: FindReplace.java:121
+msgid "Ignore Case"
+msgstr "大文字小文字を区別しない"
+
+#: FindReplace.java:137 FindReplace.java:146
+msgid "Replace All"
+msgstr "全て置換"
+
+#: FindReplace.java:138 FindReplace.java:145 Sketch.java:1050
+msgid "Replace"
+msgstr "置換"
+
+#: FindReplace.java:139 FindReplace.java:144
+msgid "Replace & Find"
+msgstr "置換して次"
+
+#: FindReplace.java:140 FindReplace.java:143
+msgid "Find"
+msgstr "検索"
+
+#: Sketch.java:278 Sketch.java:307 Sketch.java:581 Sketch.java:970
+msgid "Sketch is Read-Only"
+msgstr "スケッチに書き込めません。"
+
+#: Sketch.java:279 Sketch.java:308 Sketch.java:582 Sketch.java:971
+msgid ""
+"Some files are marked \"read-only\", so you'll\n"
+"need to re-save the sketch in another location,\n"
+"and try again."
+msgstr ""
+"読込専用に設定されたファイルがあります。\n"
+"スケッチを別の場所に保存してください。\n"
+
+#: Sketch.java:286
+msgid "Name for new file:"
+msgstr "新規ファイルの名前:"
+
+#: Sketch.java:298
+msgid "Sketch is Untitled"
+msgstr "スケッチには、まだ名前がありません。"
+
+#: Sketch.java:299
+msgid ""
+"How about saving the sketch first \n"
+"before trying to rename it?"
+msgstr ""
+"スケッチの名前を変更する前に、スケッチを保存しますか?"
+
+#: Sketch.java:359 Sketch.java:366 Sketch.java:377
+msgid "Problem with rename"
+msgstr "名前を変更できませんでした。"
+
+#: Sketch.java:360
+msgid "The name cannot start with a period."
+msgstr "この名前の先頭はピリオド「.」にしてはいけません。"
+
+#: Sketch.java:368
+#, java-format
+msgid "\".{0}\" is not a valid extension."
+msgstr "拡張子「.{0}」は、使えません。"
+
+#: Sketch.java:378
+msgid ""
+"The main file can't use an extension.\n"
+"(It may be time for your to graduate to a\n"
+"\"real\" programming environment)"
+msgstr ""
+
+#: Sketch.java:400 Sketch.java:414 Sketch.java:423 Sketch.java:863
+msgid "Nope"
+msgstr "ダメ。"
+
+#: Sketch.java:402
+#, java-format
+msgid "A file named \"{0}\" already exists in \"{1}\""
+msgstr "「{0}」というファイルは、すでにフォルダ「{1}」内に存在します。"
+
+#: Sketch.java:415
+msgid "You can't have a .cpp file with the same name as the sketch."
+msgstr "スケッチと同じ名前の.cppファイルは使えません。"
+
+#: Sketch.java:425
+msgid ""
+"You can't rename the sketch to \"{0}\"\n"
+"because the sketch already has a .cpp file with that name."
+msgstr ""
+"このスケッチには、すでにその名前の.cppファイルが存在するため、"
+"スケッチの名前を「{0}」に変更する事ができません。"
+
+#: Sketch.java:459
+msgid "Cannot Rename"
+msgstr "名前を変更できません。"
+
+#: Sketch.java:461
+#, java-format
+msgid "Sorry, a sketch (or folder) named \"{0}\" already exists."
+msgstr "すでに「{0}」という名前のスケッチまたはフォルダが存在します。"
+
+#: Sketch.java:479
+msgid "Could not rename the sketch. (0)"
+msgstr "スケッチの名前を変更できませんでした。(0)"
+
+#: Sketch.java:487 Sketch.java:532
+#, java-format
+msgid "Could not rename \"{0}\" to \"{1}\""
+msgstr "「{0}」の名前を「{1}」に変更できませんでした。"
+
+#: Sketch.java:500
+msgid "Could not rename the sketch. (1)"
+msgstr "スケッチの名前を変更できませんでした。(1)"
+
+#: Sketch.java:507
+msgid "Could not rename the sketch. (2)"
+msgstr "スケッチの名前を変更できませんでした。(2)"
+
+#: Sketch.java:544
+msgid "createNewFile() returned false"
+msgstr "createNewFile()がfalseを返しました。"
+
+#: Sketch.java:591
+msgid "Are you sure you want to delete this sketch?"
+msgstr "このスケッチを本当に削除しますか?"
+
+#: Sketch.java:592
+#, java-format
+msgid "Are you sure you want to delete \"{0}\"?"
+msgstr "「{0}」を本当に削除しますか?"
+
+#: Sketch.java:620
+msgid "Couldn't do it"
+msgstr "それは実行できませんでした。"
+
+#: Sketch.java:621
+#, java-format
+msgid "Could not delete \"{0}\"."
+msgstr "「{0}」を削除できませんでした。"
+
+#: Sketch.java:651
+msgid "removeCode: internal error.. could not find code"
+msgstr "removeCode:内部エラー、対象のコードが見つかりません。"
+
+#: Sketch.java:724
+msgid "Sketch is read-only"
+msgstr "スケッチに書き込めません。"
+
+#: Sketch.java:725
+msgid ""
+"Some files are marked \"read-only\", so you'll\n"
+"need to re-save this sketch to another location."
+msgstr ""
+"書き込み先の場所には、書き込み禁止のファイルがあります。"
+"このため、このスケッチは別の場所に保存し直してください。"
+
+#: Sketch.java:743
+msgid ""
+"In Arduino 1.0, the default file extension has changed\n"
+"from .pde to .ino. New sketches (including those created\n"
+"by \"Save-As\" will use the new extension. The extension\n"
+"of existing sketches will be updated on save, but you can\n"
+"disable this in the Preferences dialog.\n"
+"\n"
+"Save sketch and update its extension?"
+msgstr ""
+"Arduino 1.0では、スケッチのファイルの拡張子を.pdeから.inoに\n"
+"変更しました。新しいスケッチおよび「名前を付けて保存」で保存\n"
+"したスケッチには、新しい拡張子が使われます。また、既存のスケッチ\n"
+"を開いてから保存すると、新しい拡張子に自動的に変更されます。\n"
+"この機能は、「環境設定」で無効にする事ができます。\n"
+"\n"
+"拡張子を変更してスケッチを保存しますか?"
+
+#: Sketch.java:750
+msgid ".pde -> .ino"
+msgstr ""
+
+#: Sketch.java:829
+msgid "Save sketch folder as..."
+msgstr "スケッチのフォルダの保存先..."
+
+#: Sketch.java:865
+msgid ""
+"You can't save the sketch as \"{0}\"\n"
+"because the sketch already has a .cpp file with that name."
+msgstr ""
+"このスケッチには、すでにその名前の.cppファイルが存在するため、"
+"スケッチを「{0}」として保存することができません。"
+
+#: Sketch.java:886
+msgid "How very Borges of you"
+msgstr "それはムリ。"
+
+#: Sketch.java:887
+msgid ""
+"You cannot save the sketch into a folder\n"
+"inside itself. This would go on forever."
+msgstr ""
+"自らのスケッチのフォルダの中にスケッチを保存することなんてできません。"
+"無限ループになっちゃいます。"
+
+#: Sketch.java:979
+msgid "Select an image or other data file to copy to your sketch"
+msgstr ""
+"画像など、スケッチの一部としてコピーして加えたいファイルを選択してください。"
+
+#: Sketch.java:996 Editor.java:377
+msgid "One file added to the sketch."
+msgstr "スケッチにファイルを1個追加しました。"
+
+#: Sketch.java:1047
+#, java-format
+msgid "Replace the existing version of {0}?"
+msgstr ""
+"すでに同じ「{0}」という名前のファイルがスケッチの中にありますが、"
+"置き換えますか?"
+
+#: Sketch.java:1069 Sketch.java:1092
+msgid "Error adding file"
+msgstr "ファイルを追加する際にエラーが発生しました。"
+
+#: Sketch.java:1070
+#, java-format
+msgid "Could not delete the existing ''{0}'' file."
+msgstr "既存の「{0}」というファイルを削除できませんでした。"
+
+#: Sketch.java:1078
+msgid "You can't fool me"
+msgstr "ヘンなことしちゃだめ。"
+
+#: Sketch.java:1079
+msgid ""
+"This file has already been copied to the\n"
+"location from which where you're trying to add it.\n"
+"I ain't not doin nuthin'."
+msgstr ""
+"このファイルはすでにコピーされてスケッチの中にあります。"
+"まだ、何もしてませんよ!"
+
+#: Sketch.java:1093
+#, java-format
+msgid "Could not add ''{0}'' to the sketch."
+msgstr "ファイル「{0}」をスケッチに加えることができませんでした。"
+
+#: Sketch.java:1359 Sketch.java:1390
+msgid "Build folder disappeared or could not be written"
+msgstr "ビルド用のフォルダが消えてしまったか、書き込みができません。"
+
+#: Sketch.java:1374
+msgid "Could not find main class"
+msgstr "メインのクラスが見つかりません。"
+
+#: Sketch.java:1399
+#, java-format
+msgid "Uncaught exception type: {0}"
+msgstr "想定外の例外「{0}」が発生しました。"
+
+#: Sketch.java:1431
+#, java-format
+msgid "Problem moving {0} to the build folder"
+msgstr "「{0}」をビルドフォルダに移動できませんでした。"
+
+#: Sketch.java:1631 Editor.java:1828
+msgid "Compiling sketch..."
+msgstr "スケッチをコンパイルしています…"
+
+#: Sketch.java:1645
+msgid "Uploading..."
+msgstr "マイコンボードに書き込んでいます…"
+
+#: Sketch.java:1668
+#, java-format
+msgid "Binary sketch size: {0} bytes (of a {1} byte maximum)"
+msgstr "コンパイル後のスケッチのサイズ:{0}バイト(最大容量{1}バイト)"
+
+#: Sketch.java:1673
+msgid "Couldn't determine program size: {0}"
+msgstr "コンパイル後のサイズがわかりません:{0}"
+
+#: Sketch.java:1678
+msgid ""
+"Sketch too big; see http://www.arduino.cc/en/Guide/Troubleshooting#size for "
+"tips on reducing it."
+msgstr ""
+"スケッチが大きすぎます。"
+"http://www.arduino.cc/en/Guide/Troubleshooting#size には、小さくするコツが書いてあります。"
+
+#: Sketch.java:1738
+msgid "Missing the */ from the end of a /* comment */"
+msgstr "「/* */」形式のコメントの「*/」がありません。"
+
+#: Sketch.java:1780
+msgid "Sketch Disappeared"
+msgstr "スケッチが消滅してしまいました。"
+
+#: Sketch.java:1781
+msgid ""
+"The sketch folder has disappeared.\n"
+" Will attempt to re-save in the same location,\n"
+"but anything besides the code will be lost."
+msgstr ""
+"スケッチブックの保存場所フォルダが無くなってしまいました。\n"
+"環境設定で指定している保存場所に保存し直します。\n"
+"このスケッチと一緒に保存していたファイルは失われるかもしれません。"
+
+#: Sketch.java:1794
+msgid "Could not re-save sketch"
+msgstr "スケッチを保存し直すことができませんでした。"
+
+#: Sketch.java:1795
+msgid ""
+"Could not properly re-save the sketch. You may be in trouble at this point,\n"
+"and it might be time to copy and paste your code to another text editor."
+msgstr ""
+"スケッチを正常に保存することができませんでした。\n"
+"保存先に問題がある可能性があります。\n"
+"別のテキストエディタでスケッチを開き、コードをコピー&ペーストして別のファイルに保存することをおすすめします。"
+
+#: Sketch.java:2044
+msgid ""
+"The sketch name had to be modified. Sketch names can only consist\n"
+"of ASCII characters and numbers (but cannot start with a number).\n"
+"They should also be less less than 64 characters long."
+msgstr ""
+"都合により、スケッチの名前を変更しました。"
+"スケッチの名前は、ASCII文字および数字(先頭を除く)であり、"
+"64文字以下であることが必要です。"
+
+#: EditorConsole.java:147
+msgid "Console Error"
+msgstr "コンソールの異常"
+
+#: EditorConsole.java:148
+msgid ""
+"A problem occurred while trying to open the\n"
+"files used to store the console output."
+msgstr ""
+"コンソール出力を保存するファイルを開こうとしたら、\n"
+"問題が発生しました。"
+
+#: debug/Uploader.java:52
+msgid "https://developer.berlios.de/bugs/?group_id=3590"
+msgstr ""
+
+#: debug/Uploader.java:54 debug/Compiler.java:43
+#, java-format
+msgid "Compiler error, please submit this code to {0}"
+msgstr "コンパイラのエラーです。問題の起きたスケッチを{0}に送ってください。"
+
+#: debug/Uploader.java:199
+#, java-format
+msgid ""
+"the selected serial port {0} does not exist or your board is not connected"
+msgstr ""
+"シリアルポート「{0}」が選択されていますが、そのポートは存在しないか、マイコンボードが接続されていません。"
+
+#: debug/Uploader.java:203
+msgid ""
+"Device is not responding, check the right serial port is selected or RESET "
+"the board right before exporting"
+msgstr ""
+"マイコンボードが応答しません。シリアルポートが正しく選択されている事を確認してください。また、書き込みの直前にマイコンボードのリセットボタンを押してみてください。"
+
+#: debug/Uploader.java:209
+msgid ""
+"Problem uploading to board. See http://www.arduino.cc/en/Guide/"
+"Troubleshooting#upload for suggestions."
+msgstr ""
+"マイコンボードに書き込もうとしましたが、エラーが発生しました。\n"
+"このページを参考にしてください。\n"
+"http://www.arduino.cc/en/Guide/Troubleshooting#upload"
+
+#: debug/Uploader.java:213
+msgid ""
+"Wrong microcontroller found. Did you select the right board from the Tools "
+"> Board menu?"
+msgstr ""
+"マイコンボードと通信したところ、選択と異なるマイコンチップが応答しました。"
+"「ツール」メニューの「マイコンボード」の選択肢から、正しいマイコンボードを選んでください。"
+
+#: debug/Compiler.java:41
+msgid "http://code.google.com/p/arduino/issues/list"
+msgstr ""
+
+#: debug/Compiler.java:79
+msgid "No board selected; please choose a board from the Tools > Board menu."
+msgstr "マイコンボードが選ばれていません。「ツール」メニューの「マイコンボード」の選択肢から、マイコンボードを選んでください。"
+
+#: debug/Compiler.java:346
+#, java-format
+msgid "{0} returned {1}"
+msgstr "{0}が{1}を返しました。"
+
+#: debug/Compiler.java:350
+msgid "Error compiling."
+msgstr "コンパイル時にエラーが発生しました。"
+
+#: debug/Compiler.java:389
+msgid "Please import the SPI library from the Sketch > Import Library menu."
+msgstr "「スケッチ」メニューの「ライブラリを使用」で、SPIライブラリを読み込んでください。"
+
+#: debug/Compiler.java:390
+msgid ""
+"\n"
+"As of Arduino 0019, the Ethernet library depends on the SPI library.\n"
+"You appear to be using it or another library that depends on the SPI "
+"library.\n"
+"\n"
+msgstr ""
+"\n"
+"Arduino 0019以降、EthernetライブラリはSPIライブラリに依存しています。\n"
+"Ethernetライブラリまたはその他の、SPIライブラリに依存するライブラリを使用しているようですね。\n"
+"\n"
+
+#: debug/Compiler.java:395
+msgid "The 'BYTE' keyword is no longer supported."
+msgstr "「BYTE」キーワードは、使用できなくなりました。"
+
+#: debug/Compiler.java:396
+msgid ""
+"\n"
+"As of Arduino 1.0, the 'BYTE' keyword is no longer supported.\n"
+"Please use Serial.write() instead.\n"
+"\n"
+msgstr ""
+"\n"
+"Arduino 1.0以降、「BYTE」キーワードは使用できなくなりました。\n"
+"Serial.write()を使用してください。\n"
+"\n"
+
+#: debug/Compiler.java:401
+msgid "The Server class has been renamed EthernetServer."
+msgstr "「Server」クラスは「EthernetServer」に名称変更されました。"
+
+#: debug/Compiler.java:402
+msgid ""
+"\n"
+"As of Arduino 1.0, the Server class in the Ethernet library has been renamed "
+"to EthernetServer.\n"
+"\n"
+msgstr ""
+"\n"
+"Arduino 1.0以降、Ethernetライブラリの「Server」クラスは、「EthernetServer」に名称変更されました。\n"
+"\n"
+
+#: debug/Compiler.java:407
+msgid "The Client class has been renamed EthernetClient."
+msgstr "「Client」クラスは「EthernetClient」に名称変更されました。"
+
+#: debug/Compiler.java:408
+msgid ""
+"\n"
+"As of Arduino 1.0, the Client class in the Ethernet library has been renamed "
+"to EthernetClient.\n"
+"\n"
+msgstr ""
+"\n"
+"Arduino 1.0以降、Ethernetライブラリの「Client」クラスは、「EthernetClient」に名称変更されました。\n"
+"\n"
+
+#: debug/Compiler.java:413
+msgid "The Udp class has been renamed EthernetUdp."
+msgstr "「Udp」クラスは「EthernetUdp」に名称変更されました。"
+
+#: debug/Compiler.java:414
+msgid ""
+"\n"
+"As of Arduino 1.0, the Udp class in the Ethernet library has been renamed to "
+"EthernetClient.\n"
+"\n"
+msgstr ""
+"\n"
+"Arduino 1.0以降、Ethernetライブラリの「Udp」クラスは、「EthernetUdp」に名称変更されました。\n"
+"\n"
+
+#: debug/Compiler.java:419
+msgid "Wire.send() has been renamed Wire.write()."
+msgstr "「Wire.send()」は、「Wire.write()」に名称変更されました。"
+
+#: debug/Compiler.java:420
+msgid ""
+"\n"
+"As of Arduino 1.0, the Wire.send() function was renamed to Wire.write() for "
+"consistency with other libraries.\n"
+"\n"
+msgstr ""
+"\n"
+"Arduino 1.0以降、「Wire.send()」関数は、他のライブラリとの整合性を高めるため、「Wire.write()」に名称変更されました。"
+"\n"
+
+#: debug/Compiler.java:425
+msgid "Wire.receive() has been renamed Wire.read()."
+msgstr "「Wire.receive()」は、「Wire.read()」に名称変更されました。"
+
+#: debug/Compiler.java:426
+msgid ""
+"\n"
+"As of Arduino 1.0, the Wire.receive() function was renamed to Wire.read() "
+"for consistency with other libraries.\n"
+"\n"
+msgstr ""
+"\n"
+"Arduino 1.0以降、「Wire.receive()」関数は、他のライブラリとの整合性を高めるため、「Wire.read()」に名称変更されました。"
+"\n"
+
+#: tools/format/src/AutoFormat.java:54 tools/AutoFormat.java:913
+msgid "No changes necessary for Auto Format."
+msgstr "整形の必要はありませんでした。"
+
+#: tools/Archiver.java:48
+msgid "Archive Sketch"
+msgstr "スケッチをアーカイブする。"
+
+#: tools/Archiver.java:59
+msgid "yyMMdd"
+msgstr "yyyyMMdd"
+
+#: tools/Archiver.java:74
+msgid "Couldn't archive sketch"
+msgstr "スケッチをアーカイブできませんでした。"
+
+#: tools/Archiver.java:75
+msgid ""
+"Archiving the sketch has been canceled because\n"
+"the sketch couldn't save properly."
+msgstr ""
+"スケッチを保存できなかったため、スケッチのアーカイブは取りやめました。"
+
+#: tools/Archiver.java:109
+msgid "Archive sketch as:"
+msgstr "スケッチをアーカイブする名前:"
+
+#: tools/Archiver.java:139
+msgid "Archive sketch canceled."
+msgstr "スケッチのアーカイブを取りやめました"
+
+#: tools/AutoFormat.java:91
+msgid "Auto Format"
+msgstr "自動整形"
+
+#: tools/AutoFormat.java:919
+msgid "Auto Format Canceled: Too many right parentheses."
+msgstr "「)」が多すぎるため、自動整形を取りやめました。"
+
+#: tools/AutoFormat.java:922
+msgid "Auto Format Canceled: Too many left parentheses."
+msgstr "「(」が多すぎるため、自動整形を取りやめました。"
+
+#: tools/AutoFormat.java:928
+msgid "Auto Format Canceled: Too many right curly braces."
+msgstr "「}」が多すぎるため、自動整形を取りやめました。"
+
+#: tools/AutoFormat.java:931
+msgid "Auto Format Canceled: Too many left curly braces."
+msgstr "「{」が多すぎるため、自動整形を取りやめました。"
+
+#: tools/AutoFormat.java:941
+msgid "Auto Format finished."
+msgstr "自動整形が完了しました。"
+
+#: tools/FixEncoding.java:41 tools/FixEncoding.java:58
+#: tools/FixEncoding.java:79
+msgid "Fix Encoding & Reload"
+msgstr "エンコーディングを修正"
+
+#: tools/FixEncoding.java:57
+msgid "Discard all changes and reload sketch?"
+msgstr "未保存の変更を破棄してスケッチを読み込み直しますか?"
+
+#: tools/FixEncoding.java:77
+msgid ""
+"An error occurred while trying to fix the file encoding.\n"
+"Do not attempt to save this sketch as it may overwrite\n"
+"the old version. Use Open to re-open the sketch and try again.\n"
+msgstr ""
+"エンコーディングを修正しようとしましたが、エラーが発生しました。\n"
+"今ここで保存すると、修正前のスケッチをおかしな内容で上書きしてしまう\n"
+"可能性があります。スケッチを開き直して、もう一度エンコーディングの\n"
+"修正をしてみてください。"
+
+#: Editor.java:374
+msgid "No files were added to the sketch."
+msgstr "スケッチにファイルは追加されませんでした。"
+
+#: Editor.java:381
+#, java-format
+msgid "{0} files added to the sketch."
+msgstr "スケッチにファイルを{0}個追加しました。"
+
+#: Editor.java:492
+msgid "File"
+msgstr "ファイル"
+
+#: Editor.java:511
+msgid "Sketchbook"
+msgstr "スケッチブック"
+
+#: Editor.java:517
+msgid "Examples"
+msgstr "スケッチ例"
+
+#: Editor.java:522 Editor.java:1962
+msgid "Close"
+msgstr "閉じる"
+
+#: Editor.java:538
+msgid "Save As..."
+msgstr "名前を付けて保存"
+
+#: Editor.java:564
+msgid "Page Setup"
+msgstr "プリンタの設定..."
+
+#: Editor.java:572
+msgid "Print"
+msgstr "印刷..."
+
+#: Editor.java:608
+msgid "Sketch"
+msgstr "スケッチ"
+
+#: Editor.java:610
+msgid "Verify / Compile"
+msgstr "検証・コンパイル"
+
+#: Editor.java:637
+msgid "Import Library..."
+msgstr "ライブラリを使用"
+
+#: Editor.java:642
+msgid "Show Sketch Folder"
+msgstr "スケッチのフォルダを表示"
+
+#: Editor.java:651
+msgid "Add File..."
+msgstr "ファイルを追加..."
+
+#: Editor.java:664
+msgid "Tools"
+msgstr "ツール"
+
+#: Editor.java:690
+msgid "Board"
+msgstr "マイコンボード"
+
+#: Editor.java:698
+msgid "Serial Port"
+msgstr "シリアルポート"
+
+#: Editor.java:703
+msgid "Programmer"
+msgstr "書込装置"
+
+#: Editor.java:707
+msgid "Burn Bootloader"
+msgstr "ブートローダを書き込む"
+
+#: Editor.java:931
+msgid "serialMenu is null"
+msgstr "serialMenuがカラです"
+
+#: Editor.java:935 Editor.java:942
+msgid "name is null"
+msgstr "名前がカラです"
+
+#: Editor.java:994
+msgid "error retrieving port list"
+msgstr "ポート名の一覧を取得できませんでした。"
+
+#: Editor.java:1010
+msgid "Help"
+msgstr "ヘルプ"
+
+#: Editor.java:1049
+msgid "Getting Started"
+msgstr "初心者向けガイド"
+
+#: Editor.java:1057
+msgid "Environment"
+msgstr "このソフトの使い方について"
+
+#: Editor.java:1065
+msgid "Troubleshooting"
+msgstr "トラブルシューティング"
+
+#: Editor.java:1073
+msgid "Reference"
+msgstr "リファレンス"
+
+#: Editor.java:1081 Editor.java:2713
+msgid "Find in Reference"
+msgstr "リファレンスで検索"
+
+#: Editor.java:1091
+msgid "Frequently Asked Questions"
+msgstr "よくある質問"
+
+#: Editor.java:1099
+msgid "Visit Arduino.cc"
+msgstr "Arduino.ccウェブサイトを開く"
+
+#: Editor.java:1102
+msgid "http://arduino.cc/"
+msgstr ""
+
+#: Editor.java:1110
+msgid "About Arduino"
+msgstr "Arduinoについて..."
+
+#: Editor.java:1124
+msgid "Edit"
+msgstr "編集"
+
+#: Editor.java:1127 Editor.java:1326
+msgid "Undo"
+msgstr "元に戻す"
+
+#: Editor.java:1131 Editor.java:1361
+msgid "Redo"
+msgstr "やり直し"
+
+#: Editor.java:1139 Editor.java:2637
+msgid "Cut"
+msgstr "切り取り"
+
+#: Editor.java:1147 Editor.java:2645
+msgid "Copy"
+msgstr "コピー"
+
+#: Editor.java:1155 Editor.java:2653
+msgid "Copy for Forum"
+msgstr "フォーラム投稿形式でコピーする"
+
+#: Editor.java:1167 Editor.java:2661
+msgid "Copy as HTML"
+msgstr "HTML形式でコピーする"
+
+#: Editor.java:1179 Editor.java:2669
+msgid "Paste"
+msgstr "貼り付け"
+
+#: Editor.java:1188 Editor.java:2677
+msgid "Select All"
+msgstr "全て選択"
+
+#: Editor.java:1198 Editor.java:2687
+msgid "Comment/Uncomment"
+msgstr "コメント化・復帰"
+
+#: Editor.java:1206 Editor.java:2695
+msgid "Increase Indent"
+msgstr "インデントを増やす"
+
+#: Editor.java:1214 Editor.java:2703
+msgid "Decrease Indent"
+msgstr "インデントを減らす"
+
+#: Editor.java:1224
+msgid "Find..."
+msgstr "検索..."
+
+#: Editor.java:1239
+msgid "Find Next"
+msgstr "次を検索"
+
+#: Editor.java:1801
+msgid "First select a word to find in the reference."
+msgstr "リファレンスで検索したい言葉を選んだ状態にしてから実行してください。"
+
+#: Editor.java:1808
+#, java-format
+msgid "No reference available for \"{0}\""
+msgstr "リファレンスマニュアルに「{0}」はありません。"
+
+#: Editor.java:1811
+#, java-format
+msgid "{0}.html"
+msgstr ""
+
+#: Editor.java:1849 Editor.java:1866
+msgid "Done compiling."
+msgstr "コンパイル終了。"
+
+#: Editor.java:1958
+#, java-format
+msgid "Save changes to \"{0}\"? "
+msgstr "変更内容を「{0}」に書き込みますか?"
+
+#: Editor.java:1991
+msgid ""
+" If you don't "
+"save, your changes will be lost."
+msgstr ""
+" 保存しないと、変更内容は失われます。"
+
+#: Editor.java:2002
+msgid "Don't Save"
+msgstr "保存しない"
+
+#: Editor.java:2074
+msgid "Bad file selected"
+msgstr "間違ったファイルを開きました。"
+
+#: Editor.java:2075
+msgid ""
+"Processing can only open its own sketches\n"
+"and other files ending in .ino or .pde"
+msgstr ""
+"このIDEは、ファイル名が拡張子.inoまたは.pdeで\n"
+"終わるファイルだけを開くことができます。"
+
+#: Editor.java:2085
+#, java-format
+msgid ""
+"The file \"{0}\" needs to be inside\n"
+"a sketch folder named \"{1}\".\n"
+"Create this folder, move the file, and continue?"
+msgstr ""
+"「{0}」というファイルは、「{1}」という名前のフォルダの中にある必要がありま"
+"す。自動的にこのフォルダを作って、ファイルを中に入れますか?"
+
+#: Editor.java:2094
+msgid "Moving"
+msgstr "移動中"
+
+#: Editor.java:2107
+#, java-format
+msgid "A folder named \"{0}\" already exists. Can't open sketch."
+msgstr "「{0}」という名前のフォルダはすでに存在します。スケッチを開けません。"
+
+#: Editor.java:2117
+msgid "Could not create the sketch folder."
+msgstr "スケッチフォルダを作成できません。"
+
+#: Editor.java:2126
+msgid "Could not copy to a proper location."
+msgstr "コピーするべきフォルダにファイルをコピーできませんでした。"
+
+#: Editor.java:2144
+msgid "Could not create the sketch."
+msgstr "スケッチを作成できません。"
+
+#: Editor.java:2151
+#, java-format
+msgid "{0} | Arduino {1}"
+msgstr ""
+
+#: Editor.java:2208 Editor.java:2246
+msgid "Saving..."
+msgstr "保存中です..."
+
+#: Editor.java:2213 Editor.java:2249
+msgid "Done Saving."
+msgstr "保存しました。"
+
+#: Editor.java:2255
+msgid "Save Canceled."
+msgstr "保存を中止しました。"
+
+#: Editor.java:2281
+#, java-format
+msgid ""
+"Serial port {0} not found.\n"
+"Retry the upload with another serial port?"
+msgstr ""
+"シリアルポート「{0}」が存在しません。\n"
+"シリアルポートを変更して、もう一度書き込みますか?"
+
+#: Editor.java:2316
+msgid "Uploading to I/O Board..."
+msgstr "マイコンボードに書き込んでいます…"
+
+#: Editor.java:2333 Editor.java:2369
+msgid "Done uploading."
+msgstr "マイコンボードへの書き込みが完了しました。"
+
+#: Editor.java:2341 Editor.java:2377
+msgid "Upload canceled."
+msgstr "書き込みを取りやめました。"
+
+#: Editor.java:2405
+msgid "Save changes before export?"
+msgstr "エクスポートを行う前に保存しますか?"
+
+#: Editor.java:2420
+msgid "Export canceled, changes must first be saved."
+msgstr ""
+"エクスポートを取りやめました。"
+"エクスポートを行う前に保存する必要があります。"
+
+#: Editor.java:2442
+msgid "Burning bootloader to I/O Board (this may take a minute)..."
+msgstr "マイコンボードにブートローダを書き込んでいます…"
+
+#: Editor.java:2448
+msgid "Done burning bootloader."
+msgstr "ブートローダの書き込みが完了しました。"
+
+#: Editor.java:2450 Editor.java:2454 Editor.java:2458
+msgid "Error while burning bootloader."
+msgstr "ブートローダを書き込もうとしましたが、エラーが発生しました。"
+
+#: Editor.java:2485
+msgid "Printing..."
+msgstr "印刷しています..."
+
+#: Editor.java:2502
+msgid "Done printing."
+msgstr "印刷が完了しました。"
+
+#: Editor.java:2505
+msgid "Error while printing."
+msgstr "印刷中にエラーが発生しました。"
+
+#: Editor.java:2509
+msgid "Printing canceled."
+msgstr "印刷を取りやめました。"
+
+#: Editor.java:2557
+#, java-format
+msgid "Bad error line: {0}"
+msgstr "エラーの行番号「{0}」は範囲外です。"
+
+#: Editor.java:2626
+msgid "Open URL"
+msgstr "URLを開く"
+
+#: Platform.java:167
+msgid "No launcher available"
+msgstr "外部プログラム起動ツールが有りません。"
+
+#: Platform.java:168
+msgid ""
+"Unspecified platform, no launcher available.\n"
+"To enable opening URLs or folders, add a \n"
+"\"launcher=/path/to/app\" line to preferences.txt"
+msgstr ""
+"外部プログラム起動ツールが有りません。"
+"URLやフォルダを自動的に開く機能を有効にするには、"
+"preferences.txtに\"launcher=/path/to/app\"の設定行を追加してください。"
diff --git a/app/src/processing/app/Resources_ja.properties b/app/src/processing/app/Resources_ja.properties
new file mode 100644
index 00000000000..7018d049808
--- /dev/null
+++ b/app/src/processing/app/Resources_ja.properties
@@ -0,0 +1,936 @@
+# Japanese language resource for the Arduino IDE.
+# Copyright (C) 2011 switch-science.com
+# This file is distributed under the same license as the Arduino IDE package.
+# Shigeru KANEMOTO Closing\ the\ last\ open\ sketch\ will\ quit\ Arduino.=
+
+#: Base.java:779 Editor.java:594
+Quit=\u7d42\u4e86
+
+#: Base.java:900 Editor.java:502
+Open...=\u958b\u304f...
+
+#: Base.java:967
+Contributed=\u30e6\u30fc\u30b6\u63d0\u4f9b
+
+#: Base.java:1091
+Sketch\ Does\ Not\ Exist=\u30b9\u30b1\u30c3\u30c1\u304c\u5b58\u5728\u3057\u307e\u305b\u3093\u3002
+
+#: Base.java:1092
+The\ selected\ sketch\ no\ longer\ exists.\nYou\ may\ need\ to\ restart\ Arduino\ to\ update\nthe\ sketchbook\ menu.=\u9078\u629e\u3057\u305f\u30b9\u30b1\u30c3\u30c1\u304c\u5b58\u5728\u3057\u307e\u305b\u3093\u3002\n\u30b9\u30b1\u30c3\u30c1\u30d6\u30c3\u30af\u30e1\u30cb\u30e5\u30fc\u3092\u66f4\u65b0\u3059\u308b\u306b\u306fArduino IDE\u3092\u518d\u8d77\u52d5\u3057\u3066\u4e0b\u3055\u3044\u3002
+
+#: Base.java:1121
+#, java-format
+The\ sketch\ "{0}"\ cannot\ be\ used.\nSketch\ names\ must\ contain\ only\ basic\ letters\ and\ numbers\n(ASCII-only\ with\ no\ spaces,\ and\ it\ cannot\ start\ with\ a\ number).\nTo\ get\ rid\ of\ this\ message,\ remove\ the\ sketch\ from\n{1}=\u300c{0}\u300d\u3068\u3044\u3046\u540d\u524d\u3092\u30b9\u30b1\u30c3\u30c1\u306b\u4ed8\u3051\u308b\u3053\u3068\u306f\u3067\u304d\u307e\u305b\u3093\u3002\n\u30b9\u30b1\u30c3\u30c1\u540d\u306b\u306f\u534a\u89d2\u6587\u5b57\u3068\u6570\u5b57\u306e\u307f\u304c\u4f7f\u7528\u53ef\u80fd\u3067\u3059\u3002\n\uff08ASCII\u6587\u5b57\u306e\u307f\u3001\u30b9\u30da\u30fc\u30b9\u3092\u9664\u304d\u307e\u3059\u3002\u6570\u5b57\u3067\u59cb\u307e\u308b\u540d\u524d\u306f\u4f7f\u3048\u307e\u305b\u3093\u3002\uff09\n\u3053\u306e\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u8868\u793a\u3057\u306a\u3044\u3088\u3046\u306b\u3059\u308b\u306b\u306f\u3001\u300c{1}\u300d\u304b\u3089\u30b9\u30b1\u30c3\u30c1\u3092\u524a\u9664\n\u3057\u3066\u4e0b\u3055\u3044\u3002
+
+#: Base.java:1128
+Ignoring\ sketch\ with\ bad\ name=\u4f7f\u7528\u3067\u304d\u306a\u3044\u540d\u524d\u306e\u30b9\u30b1\u30c3\u30c1\u306f\u7121\u8996\u3057\u307e\u3059\u3002
+
+#: Base.java:1198
+#, java-format
+The\ library\ "{0}"\ cannot\ be\ used.\nLibrary\ names\ must\ contain\ only\ basic\ letters\ and\ numbers.\n(ASCII\ only\ and\ no\ spaces,\ and\ it\ cannot\ start\ with\ a\ number)=\u300c{0}\u300d\u3068\u3044\u3046\u540d\u524d\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u306f\u4f7f\u7528\u3067\u304d\u307e\u305b\u3093\u3002\n\u30e9\u30a4\u30d6\u30e9\u30ea\u540d\u306b\u306f\u534a\u89d2\u6587\u5b57\u3068\u6570\u5b57\u306e\u307f\u304c\u4f7f\u7528\u53ef\u80fd\u3067\u3059\u3002\n\uff08ASCII\u6587\u5b57\u306e\u307f\u3001\u30b9\u30da\u30fc\u30b9\u3092\u9664\u304d\u307e\u3059\u3002\u6570\u5b57\u3067\u59cb\u307e\u308b\u540d\u524d\u306f\u4f7f\u3048\u307e\u305b\u3093\u3002\uff09
+
+#: Base.java:1203
+Ignoring\ bad\ library\ name=\u4f7f\u7528\u3067\u304d\u306a\u3044\u30d5\u30a1\u30a4\u30eb\u540d\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u306f\u7121\u8996\u3057\u307e\u3059\u3002
+
+#: Base.java:1428
+Problem\ getting\ data\ folder=\u30c7\u30fc\u30bf\u30d5\u30a9\u30eb\u30c0\u3092\u8aad\u307f\u8fbc\u3081\u307e\u305b\u3093\u3002
+
+#: Base.java:1429
+Error\ getting\ the\ Arduino\ data\ folder.=Arduino IDE\u30c7\u30fc\u30bf\u30d5\u30a9\u30eb\u30c0\u3092\u8aad\u307f\u8fbc\u3081\u307e\u305b\u3093\u3002
+
+#: Base.java:1436
+Settings\ issues=\u8a2d\u5b9a\u306b\u95a2\u3059\u308b\u554f\u984c
+
+#: Base.java:1437
+Arduino\ cannot\ run\ because\ it\ could\ not\ncreate\ a\ folder\ to\ store\ your\ settings.=\u8a2d\u5b9a\u3092\u4fdd\u5b58\u3059\u308b\u305f\u3081\u306e\u30d5\u30a9\u30eb\u30c0\u3092\u4f5c\u6210\u3067\u304d\u306a\u3044\u305f\u3081\u3001\u52d5\u4f5c\u3092\u505c\u6b62\u3057\u307e\u3059\u3002
+
+#: Base.java:1598
+You\ forgot\ your\ sketchbook=\u30b9\u30b1\u30c3\u30c1\u30d6\u30c3\u30af\u3092\u3069\u3053\u304b\u306b\u3084\u3063\u3061\u3083\u3044\u307e\u3057\u305f\u306d\u3002
+
+#: Base.java:1599
+Arduino\ cannot\ run\ because\ it\ could\ not\ncreate\ a\ folder\ to\ store\ your\ sketchbook.=\u30b9\u30b1\u30c3\u30c1\u30d6\u30c3\u30af\u3092\u4fdd\u5b58\u3059\u308b\u30d5\u30a9\u30eb\u30c0\u3092\u4f5c\u6210\u3067\u304d\u306a\u3044\u305f\u3081\u3001\u52d5\u4f5c\u3092\u505c\u6b62\u3057\u307e\u3059\u3002
+
+#: Base.java:1619
+Select\ (or\ create\ new)\ folder\ for\ sketches...=\u30b9\u30b1\u30c3\u30c1\u3092\u4fdd\u5b58\u3059\u308b\u30d5\u30a9\u30eb\u30c0\u3092\u9078\u629e\u3059\u308b\u304b\u4f5c\u6210\u3057\u3066\u304f\u3060\u3055\u3044\u3002
+
+#: Base.java:1643
+Problem\ Opening\ URL=\u6307\u5b9a\u306eURL\u3092\u958b\u304f\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Base.java:1644
+#, java-format
+Could\ not\ open\ the\ URL\n{0}=URL\u300c{0}\u300d\u3092\u958b\u304f\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Base.java:1667
+Problem\ Opening\ Folder=\u30d5\u30a9\u30eb\u30c0\u3092\u958b\u304f\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Base.java:1668
+#, java-format
+Could\ not\ open\ the\ folder\n{0}=\u30d5\u30a9\u30eb\u30c0\u300c{0}\u300d\u3092\u958b\u304f\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Base.java:1781
+!Guide_MacOSX.html=
+
+#: Base.java:1783
+!Guide_Windows.html=
+
+#: Base.java:1785
+!http\://www.arduino.cc/playground/Learning/Linux=
+
+#: Base.java:1790
+!index.html=
+
+#: Base.java:1795
+!Guide_Environment.html=
+
+#: Base.java:1800
+!environment=
+
+#: Base.java:1800
+!platforms.html=
+
+#: Base.java:1805
+!Guide_Troubleshooting.html=
+
+#: Base.java:1810
+!FAQ.html=
+
+#: Base.java:1822
+Message=\u30e1\u30c3\u30bb\u30fc\u30b8
+
+#: Base.java:1838
+Warning=\u8b66\u544a
+
+#: Base.java:2192
+#, java-format
+Could\ not\ remove\ old\ version\ of\ {0}=\u300c{0}\u300d\u306e\u53e4\u3044\u30d0\u30fc\u30b8\u30e7\u30f3\u3092\u524a\u9664\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Base.java:2202
+#, java-format
+Could\ not\ replace\ {0}=\u300c{0}\u300d\u3092\u7f6e\u304d\u63db\u3048\u308b\u4e8b\u304c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Base.java:2243 Base.java:2266
+#, java-format
+Could\ not\ delete\ {0}=\u300c{0}\u300d\u3092\u524a\u9664\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: EditorToolbar.java:41 EditorToolbar.java:46
+Verify=\u691c\u8a3c
+
+#: EditorToolbar.java:41 Editor.java:546
+Upload=\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u306b\u66f8\u304d\u8fbc\u3080
+
+#: EditorToolbar.java:41 Editor.java:494
+New=\u65b0\u898f\u30d5\u30a1\u30a4\u30eb
+
+#: EditorToolbar.java:41
+Open=\u958b\u304f
+
+#: EditorToolbar.java:41 EditorToolbar.java:46 Editor.java:530
+#: Editor.java:2002 Editor.java:2406
+Save=\u4fdd\u5b58
+
+#: EditorToolbar.java:41 EditorToolbar.java:46 Editor.java:670
+Serial\ Monitor=\u30b7\u30ea\u30a2\u30eb\u30e2\u30cb\u30bf
+
+#: EditorToolbar.java:46 Editor.java:554
+Upload\ Using\ Programmer=\u66f8\u8fbc\u88c5\u7f6e\u3092\u4f7f\u3063\u3066\u66f8\u304d\u8fbc\u3080
+
+#: EditorToolbar.java:46
+New\ Editor\ Window=\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6
+
+#: EditorToolbar.java:46
+Open\ in\ Another\ Window=\u65b0\u898f\u30a6\u30a3\u30f3\u30c9\u30a6\u3067\u30d5\u30a1\u30a4\u30eb\u3092\u958b\u304f
+
+#: Serial.java:147
+#, java-format
+Serial\ port\ ''{0}''\ already\ in\ use.\ Try\ quiting\ any\ programs\ that\ may\ be\ using\ it.=\u30b7\u30ea\u30a2\u30eb\u30dd\u30fc\u30c8\u300c{0}\u300d\u306f\u3001\u307b\u304b\u306e\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u304c\u4f7f\u7528\u4e2d\u3067\u3059\u3002\u30b7\u30ea\u30a2\u30eb\u30dd\u30fc\u30c8\u3092\u4f7f\u3063\u3066\u3044\u308b\u53ef\u80fd\u6027\u306e\u3042\u308b\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u7d42\u4e86\u3057\u3066\u307f\u3066\u304f\u3060\u3055\u3044\u3002
+
+#: Serial.java:154
+#, java-format
+Error\ opening\ serial\ port\ ''{0}''.=\u30b7\u30ea\u30a2\u30eb\u30dd\u30fc\u30c8\u300c{0}\u300d\u304c\u958b\u3051\u307e\u305b\u3093\u3002
+
+#: Serial.java:167
+#, java-format
+Serial\ port\ ''{0}''\ not\ found.\ Did\ you\ select\ the\ right\ one\ from\ the\ Tools\ >\ Serial\ Port\ menu?=\u30b7\u30ea\u30a2\u30eb\u30dd\u30fc\u30c8\u300c{0}\u300d\u304c\u5b58\u5728\u3057\u307e\u305b\u3093\u3002\u300c\u30c4\u30fc\u30eb\u300d\u30e1\u30cb\u30e5\u30fc\u306e\u300c\u30b7\u30ea\u30a2\u30eb\u30dd\u30fc\u30c8\u300d\u3067\u3001\u6b63\u3057\u3044\u30b7\u30ea\u30a2\u30eb\u30dd\u30fc\u30c8\u3092\u9078\u3093\u3067\u3042\u308a\u307e\u3059\u304b\uff1f
+
+#: Serial.java:424
+#, java-format
+readBytesUntil()\ byte\ buffer\ is\ too\ small\ for\ the\ {0}\ bytes\ up\ to\ and\ including\ char\ {1}=readBytesUntil()\u3067\u6587\u5b57\u300c{1}\u300d\u304c\u898b\u3064\u304b\u308b\u307e\u3067\u8aad\u307f\u8fbc\u3082\u3046\u3068\u3057\u307e\u3057\u305f\u304c\u3001\u30d0\u30c3\u30d5\u30a1\u306e\u9577\u3055{0}\u30d0\u30a4\u30c8\u3067\u306f\u8db3\u308a\u307e\u305b\u3093\u3002
+
+#: Serial.java:567
+#, java-format
+Error\ inside\ Serial.{0}()=Serial.{0}()\u3067\u30a8\u30e9\u30fc
+
+#: Theme.java:52
+Could\ not\ read\ color\ theme\ settings.\nYou'll\ need\ to\ reinstall\ Processing.=\u30ab\u30e9\u30fc\u30c6\u30fc\u30de\u306e\u8a2d\u5b9a\u3092\u8aad\u307f\u8fbc\u3081\u307e\u305b\u3093\u3002\nArduino IDE\u3092\u518d\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u304f\u3060\u3055\u3044\u3002
+
+#: EditorHeader.java:292
+New\ Tab=\u65b0\u898f\u30bf\u30d6
+
+#: EditorHeader.java:300
+Rename=\u540d\u524d\u3092\u5909\u66f4
+
+#: EditorHeader.java:314 Sketch.java:595
+Delete=\u524a\u9664
+
+#: EditorHeader.java:326
+Previous\ Tab=\u524d\u306e\u30bf\u30d6
+
+#: EditorHeader.java:340
+Next\ Tab=\u6b21\u306e\u30bf\u30d6
+
+#: SerialMonitor.java:91
+Send=\u9001\u4fe1
+
+#: SerialMonitor.java:108
+Autoscroll=\u81ea\u52d5\u30b9\u30af\u30ed\u30fc\u30eb
+
+#: SerialMonitor.java:110
+No\ line\ ending=\u6539\u884c\u306a\u3057
+
+#: SerialMonitor.java:110
+Newline=LF\u306e\u307f
+
+#: SerialMonitor.java:110
+Carriage\ return=CR\u306e\u307f
+
+#: SerialMonitor.java:110
+Both\ NL\ &\ CR=CR\u304a\u3088\u3073LF
+
+#: SerialMonitor.java:128 SerialMonitor.java:131
+\ baud=\ bps
+
+#: FindReplace.java:79
+Find\:=\u691c\u7d22\u30c6\u30ad\u30b9\u30c8\uff1a
+
+#: FindReplace.java:81
+Replace\ with\:=\u7f6e\u63db\u30c6\u30ad\u30b9\u30c8\uff1a
+
+#: FindReplace.java:121
+Ignore\ Case=\u5927\u6587\u5b57\u5c0f\u6587\u5b57\u3092\u533a\u5225\u3057\u306a\u3044
+
+#: FindReplace.java:137 FindReplace.java:146
+Replace\ All=\u5168\u3066\u7f6e\u63db
+
+#: FindReplace.java:138 FindReplace.java:145 Sketch.java:1050
+Replace=\u7f6e\u63db
+
+#: FindReplace.java:139 FindReplace.java:144
+Replace\ &\ Find=\u7f6e\u63db\u3057\u3066\u6b21
+
+#: FindReplace.java:140 FindReplace.java:143
+Find=\u691c\u7d22
+
+#: Sketch.java:278 Sketch.java:307 Sketch.java:581 Sketch.java:970
+Sketch\ is\ Read-Only=\u30b9\u30b1\u30c3\u30c1\u306b\u66f8\u304d\u8fbc\u3081\u307e\u305b\u3093\u3002
+
+#: Sketch.java:279 Sketch.java:308 Sketch.java:582 Sketch.java:971
+Some\ files\ are\ marked\ "read-only",\ so\ you'll\nneed\ to\ re-save\ the\ sketch\ in\ another\ location,\nand\ try\ again.=\u8aad\u8fbc\u5c02\u7528\u306b\u8a2d\u5b9a\u3055\u308c\u305f\u30d5\u30a1\u30a4\u30eb\u304c\u3042\u308a\u307e\u3059\u3002\n\u30b9\u30b1\u30c3\u30c1\u3092\u5225\u306e\u5834\u6240\u306b\u4fdd\u5b58\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n
+
+#: Sketch.java:286
+Name\ for\ new\ file\:=\u65b0\u898f\u30d5\u30a1\u30a4\u30eb\u306e\u540d\u524d\uff1a
+
+#: Sketch.java:298
+Sketch\ is\ Untitled=\u30b9\u30b1\u30c3\u30c1\u306b\u306f\u3001\u307e\u3060\u540d\u524d\u304c\u3042\u308a\u307e\u305b\u3093\u3002
+
+#: Sketch.java:299
+How\ about\ saving\ the\ sketch\ first\ \nbefore\ trying\ to\ rename\ it?=\u30b9\u30b1\u30c3\u30c1\u306e\u540d\u524d\u3092\u5909\u66f4\u3059\u308b\u524d\u306b\u3001\u30b9\u30b1\u30c3\u30c1\u3092\u4fdd\u5b58\u3057\u307e\u3059\u304b\uff1f
+
+#: Sketch.java:359 Sketch.java:366 Sketch.java:377
+Problem\ with\ rename=\u540d\u524d\u3092\u5909\u66f4\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Sketch.java:360
+The\ name\ cannot\ start\ with\ a\ period.=\u3053\u306e\u540d\u524d\u306e\u5148\u982d\u306f\u30d4\u30ea\u30aa\u30c9\u300c.\u300d\u306b\u3057\u3066\u306f\u3044\u3051\u307e\u305b\u3093\u3002
+
+#: Sketch.java:368
+#, java-format
+".{0}"\ is\ not\ a\ valid\ extension.=\u62e1\u5f35\u5b50\u300c.{0}\u300d\u306f\u3001\u4f7f\u3048\u307e\u305b\u3093\u3002
+
+#: Sketch.java:378
+!The\ main\ file\ can't\ use\ an\ extension.\n(It\ may\ be\ time\ for\ your\ to\ graduate\ to\ a\n"real"\ programming\ environment)=
+
+#: Sketch.java:400 Sketch.java:414 Sketch.java:423 Sketch.java:863
+Nope=\u30c0\u30e1\u3002
+
+#: Sketch.java:402
+#, java-format
+A\ file\ named\ "{0}"\ already\ exists\ in\ "{1}"=\u300c{0}\u300d\u3068\u3044\u3046\u30d5\u30a1\u30a4\u30eb\u306f\u3001\u3059\u3067\u306b\u30d5\u30a9\u30eb\u30c0\u300c{1}\u300d\u5185\u306b\u5b58\u5728\u3057\u307e\u3059\u3002
+
+#: Sketch.java:415
+You\ can't\ have\ a\ .cpp\ file\ with\ the\ same\ name\ as\ the\ sketch.=\u30b9\u30b1\u30c3\u30c1\u3068\u540c\u3058\u540d\u524d\u306e.cpp\u30d5\u30a1\u30a4\u30eb\u306f\u4f7f\u3048\u307e\u305b\u3093\u3002
+
+#: Sketch.java:425
+You\ can't\ rename\ the\ sketch\ to\ "{0}"\nbecause\ the\ sketch\ already\ has\ a\ .cpp\ file\ with\ that\ name.=\u3053\u306e\u30b9\u30b1\u30c3\u30c1\u306b\u306f\u3001\u3059\u3067\u306b\u305d\u306e\u540d\u524d\u306e.cpp\u30d5\u30a1\u30a4\u30eb\u304c\u5b58\u5728\u3059\u308b\u305f\u3081\u3001\u30b9\u30b1\u30c3\u30c1\u306e\u540d\u524d\u3092\u300c{0}\u300d\u306b\u5909\u66f4\u3059\u308b\u4e8b\u304c\u3067\u304d\u307e\u305b\u3093\u3002
+
+#: Sketch.java:459
+Cannot\ Rename=\u540d\u524d\u3092\u5909\u66f4\u3067\u304d\u307e\u305b\u3093\u3002
+
+#: Sketch.java:461
+#, java-format
+Sorry,\ a\ sketch\ (or\ folder)\ named\ "{0}"\ already\ exists.=\u3059\u3067\u306b\u300c{0}\u300d\u3068\u3044\u3046\u540d\u524d\u306e\u30b9\u30b1\u30c3\u30c1\u307e\u305f\u306f\u30d5\u30a9\u30eb\u30c0\u304c\u5b58\u5728\u3057\u307e\u3059\u3002
+
+#: Sketch.java:479
+Could\ not\ rename\ the\ sketch.\ (0)=\u30b9\u30b1\u30c3\u30c1\u306e\u540d\u524d\u3092\u5909\u66f4\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002(0)
+
+#: Sketch.java:487 Sketch.java:532
+#, java-format
+Could\ not\ rename\ "{0}"\ to\ "{1}"=\u300c{0}\u300d\u306e\u540d\u524d\u3092\u300c{1}\u300d\u306b\u5909\u66f4\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Sketch.java:500
+Could\ not\ rename\ the\ sketch.\ (1)=\u30b9\u30b1\u30c3\u30c1\u306e\u540d\u524d\u3092\u5909\u66f4\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002(1)
+
+#: Sketch.java:507
+Could\ not\ rename\ the\ sketch.\ (2)=\u30b9\u30b1\u30c3\u30c1\u306e\u540d\u524d\u3092\u5909\u66f4\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002(2)
+
+#: Sketch.java:544
+createNewFile()\ returned\ false=createNewFile()\u304cfalse\u3092\u8fd4\u3057\u307e\u3057\u305f\u3002
+
+#: Sketch.java:591
+Are\ you\ sure\ you\ want\ to\ delete\ this\ sketch?=\u3053\u306e\u30b9\u30b1\u30c3\u30c1\u3092\u672c\u5f53\u306b\u524a\u9664\u3057\u307e\u3059\u304b\uff1f
+
+#: Sketch.java:592
+#, java-format
+Are\ you\ sure\ you\ want\ to\ delete\ "{0}"?=\u300c{0}\u300d\u3092\u672c\u5f53\u306b\u524a\u9664\u3057\u307e\u3059\u304b\uff1f
+
+#: Sketch.java:620
+Couldn't\ do\ it=\u305d\u308c\u306f\u5b9f\u884c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Sketch.java:621
+#, java-format
+Could\ not\ delete\ "{0}".=\u300c{0}\u300d\u3092\u524a\u9664\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Sketch.java:651
+removeCode\:\ internal\ error..\ could\ not\ find\ code=removeCode\uff1a\u5185\u90e8\u30a8\u30e9\u30fc\u3001\u5bfe\u8c61\u306e\u30b3\u30fc\u30c9\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002
+
+#: Sketch.java:724
+Sketch\ is\ read-only=\u30b9\u30b1\u30c3\u30c1\u306b\u66f8\u304d\u8fbc\u3081\u307e\u305b\u3093\u3002
+
+#: Sketch.java:725
+Some\ files\ are\ marked\ "read-only",\ so\ you'll\nneed\ to\ re-save\ this\ sketch\ to\ another\ location.=\u66f8\u304d\u8fbc\u307f\u5148\u306e\u5834\u6240\u306b\u306f\u3001\u66f8\u304d\u8fbc\u307f\u7981\u6b62\u306e\u30d5\u30a1\u30a4\u30eb\u304c\u3042\u308a\u307e\u3059\u3002\u3053\u306e\u305f\u3081\u3001\u3053\u306e\u30b9\u30b1\u30c3\u30c1\u306f\u5225\u306e\u5834\u6240\u306b\u4fdd\u5b58\u3057\u76f4\u3057\u3066\u304f\u3060\u3055\u3044\u3002
+
+#: Sketch.java:743
+In\ Arduino\ 1.0,\ the\ default\ file\ extension\ has\ changed\nfrom\ .pde\ to\ .ino.\ \ New\ sketches\ (including\ those\ created\nby\ "Save-As"\ will\ use\ the\ new\ extension.\ \ The\ extension\nof\ existing\ sketches\ will\ be\ updated\ on\ save,\ but\ you\ can\ndisable\ this\ in\ the\ Preferences\ dialog.\n\nSave\ sketch\ and\ update\ its\ extension?=Arduino 1.0\u3067\u306f\u3001\u30b9\u30b1\u30c3\u30c1\u306e\u30d5\u30a1\u30a4\u30eb\u306e\u62e1\u5f35\u5b50\u3092.pde\u304b\u3089.ino\u306b\n\u5909\u66f4\u3057\u307e\u3057\u305f\u3002\u65b0\u3057\u3044\u30b9\u30b1\u30c3\u30c1\u304a\u3088\u3073\u300c\u540d\u524d\u3092\u4ed8\u3051\u3066\u4fdd\u5b58\u300d\u3067\u4fdd\u5b58\n\u3057\u305f\u30b9\u30b1\u30c3\u30c1\u306b\u306f\u3001\u65b0\u3057\u3044\u62e1\u5f35\u5b50\u304c\u4f7f\u308f\u308c\u307e\u3059\u3002\u307e\u305f\u3001\u65e2\u5b58\u306e\u30b9\u30b1\u30c3\u30c1\n\u3092\u958b\u3044\u3066\u304b\u3089\u4fdd\u5b58\u3059\u308b\u3068\u3001\u65b0\u3057\u3044\u62e1\u5f35\u5b50\u306b\u81ea\u52d5\u7684\u306b\u5909\u66f4\u3055\u308c\u307e\u3059\u3002\n\u3053\u306e\u6a5f\u80fd\u306f\u3001\u300c\u74b0\u5883\u8a2d\u5b9a\u300d\u3067\u7121\u52b9\u306b\u3059\u308b\u4e8b\u304c\u3067\u304d\u307e\u3059\u3002\n\n\u62e1\u5f35\u5b50\u3092\u5909\u66f4\u3057\u3066\u30b9\u30b1\u30c3\u30c1\u3092\u4fdd\u5b58\u3057\u307e\u3059\u304b\uff1f
+
+#: Sketch.java:750
+!.pde\ ->\ .ino=
+
+#: Sketch.java:829
+Save\ sketch\ folder\ as...=\u30b9\u30b1\u30c3\u30c1\u306e\u30d5\u30a9\u30eb\u30c0\u306e\u4fdd\u5b58\u5148...
+
+#: Sketch.java:865
+You\ can't\ save\ the\ sketch\ as\ "{0}"\nbecause\ the\ sketch\ already\ has\ a\ .cpp\ file\ with\ that\ name.=\u3053\u306e\u30b9\u30b1\u30c3\u30c1\u306b\u306f\u3001\u3059\u3067\u306b\u305d\u306e\u540d\u524d\u306e.cpp\u30d5\u30a1\u30a4\u30eb\u304c\u5b58\u5728\u3059\u308b\u305f\u3081\u3001\u30b9\u30b1\u30c3\u30c1\u3092\u300c{0}\u300d\u3068\u3057\u3066\u4fdd\u5b58\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3002
+
+#: Sketch.java:886
+How\ very\ Borges\ of\ you=\u305d\u308c\u306f\u30e0\u30ea\u3002
+
+#: Sketch.java:887
+You\ cannot\ save\ the\ sketch\ into\ a\ folder\ninside\ itself.\ This\ would\ go\ on\ forever.=\u81ea\u3089\u306e\u30b9\u30b1\u30c3\u30c1\u306e\u30d5\u30a9\u30eb\u30c0\u306e\u4e2d\u306b\u30b9\u30b1\u30c3\u30c1\u3092\u4fdd\u5b58\u3059\u308b\u3053\u3068\u306a\u3093\u3066\u3067\u304d\u307e\u305b\u3093\u3002\u7121\u9650\u30eb\u30fc\u30d7\u306b\u306a\u3063\u3061\u3083\u3044\u307e\u3059\u3002
+
+#: Sketch.java:979
+Select\ an\ image\ or\ other\ data\ file\ to\ copy\ to\ your\ sketch=\u753b\u50cf\u306a\u3069\u3001\u30b9\u30b1\u30c3\u30c1\u306e\u4e00\u90e8\u3068\u3057\u3066\u30b3\u30d4\u30fc\u3057\u3066\u52a0\u3048\u305f\u3044\u30d5\u30a1\u30a4\u30eb\u3092\u9078\u629e\u3057\u3066\u304f\u3060\u3055\u3044\u3002
+
+#: Sketch.java:996 Editor.java:377
+One\ file\ added\ to\ the\ sketch.=\u30b9\u30b1\u30c3\u30c1\u306b\u30d5\u30a1\u30a4\u30eb\u30921\u500b\u8ffd\u52a0\u3057\u307e\u3057\u305f\u3002
+
+#: Sketch.java:1047
+#, java-format
+Replace\ the\ existing\ version\ of\ {0}?=\u3059\u3067\u306b\u540c\u3058\u300c{0}\u300d\u3068\u3044\u3046\u540d\u524d\u306e\u30d5\u30a1\u30a4\u30eb\u304c\u30b9\u30b1\u30c3\u30c1\u306e\u4e2d\u306b\u3042\u308a\u307e\u3059\u304c\u3001\u7f6e\u304d\u63db\u3048\u307e\u3059\u304b\uff1f
+
+#: Sketch.java:1069 Sketch.java:1092
+Error\ adding\ file=\u30d5\u30a1\u30a4\u30eb\u3092\u8ffd\u52a0\u3059\u308b\u969b\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002
+
+#: Sketch.java:1070
+#, java-format
+Could\ not\ delete\ the\ existing\ ''{0}''\ file.=\u65e2\u5b58\u306e\u300c{0}\u300d\u3068\u3044\u3046\u30d5\u30a1\u30a4\u30eb\u3092\u524a\u9664\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Sketch.java:1078
+You\ can't\ fool\ me=\u30d8\u30f3\u306a\u3053\u3068\u3057\u3061\u3083\u3060\u3081\u3002
+
+#: Sketch.java:1079
+This\ file\ has\ already\ been\ copied\ to\ the\nlocation\ from\ which\ where\ you're\ trying\ to\ add\ it.\nI\ ain't\ not\ doin\ nuthin'.=\u3053\u306e\u30d5\u30a1\u30a4\u30eb\u306f\u3059\u3067\u306b\u30b3\u30d4\u30fc\u3055\u308c\u3066\u30b9\u30b1\u30c3\u30c1\u306e\u4e2d\u306b\u3042\u308a\u307e\u3059\u3002\u307e\u3060\u3001\u4f55\u3082\u3057\u3066\u307e\u305b\u3093\u3088\uff01
+
+#: Sketch.java:1093
+#, java-format
+Could\ not\ add\ ''{0}''\ to\ the\ sketch.=\u30d5\u30a1\u30a4\u30eb\u300c{0}\u300d\u3092\u30b9\u30b1\u30c3\u30c1\u306b\u52a0\u3048\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Sketch.java:1359 Sketch.java:1390
+Build\ folder\ disappeared\ or\ could\ not\ be\ written=\u30d3\u30eb\u30c9\u7528\u306e\u30d5\u30a9\u30eb\u30c0\u304c\u6d88\u3048\u3066\u3057\u307e\u3063\u305f\u304b\u3001\u66f8\u304d\u8fbc\u307f\u304c\u3067\u304d\u307e\u305b\u3093\u3002
+
+#: Sketch.java:1374
+Could\ not\ find\ main\ class=\u30e1\u30a4\u30f3\u306e\u30af\u30e9\u30b9\u304c\u898b\u3064\u304b\u308a\u307e\u305b\u3093\u3002
+
+#: Sketch.java:1399
+#, java-format
+Uncaught\ exception\ type\:\ {0}=\u60f3\u5b9a\u5916\u306e\u4f8b\u5916\u300c{0}\u300d\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002
+
+#: Sketch.java:1431
+#, java-format
+Problem\ moving\ {0}\ to\ the\ build\ folder=\u300c{0}\u300d\u3092\u30d3\u30eb\u30c9\u30d5\u30a9\u30eb\u30c0\u306b\u79fb\u52d5\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Sketch.java:1631 Editor.java:1828
+Compiling\ sketch...=\u30b9\u30b1\u30c3\u30c1\u3092\u30b3\u30f3\u30d1\u30a4\u30eb\u3057\u3066\u3044\u307e\u3059\u2026
+
+#: Sketch.java:1645
+Uploading...=\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u306b\u66f8\u304d\u8fbc\u3093\u3067\u3044\u307e\u3059\u2026
+
+#: Sketch.java:1668
+#, java-format
+Binary\ sketch\ size\:\ {0}\ bytes\ (of\ a\ {1}\ byte\ maximum)=\u30b3\u30f3\u30d1\u30a4\u30eb\u5f8c\u306e\u30b9\u30b1\u30c3\u30c1\u306e\u30b5\u30a4\u30ba\uff1a{0}\u30d0\u30a4\u30c8\uff08\u6700\u5927\u5bb9\u91cf{1}\u30d0\u30a4\u30c8\uff09
+
+#: Sketch.java:1673
+Couldn't\ determine\ program\ size\:\ {0}=\u30b3\u30f3\u30d1\u30a4\u30eb\u5f8c\u306e\u30b5\u30a4\u30ba\u304c\u308f\u304b\u308a\u307e\u305b\u3093\uff1a{0}
+
+#: Sketch.java:1678
+Sketch\ too\ big;\ see\ http\://www.arduino.cc/en/Guide/Troubleshooting\#size\ for\ tips\ on\ reducing\ it.=\u30b9\u30b1\u30c3\u30c1\u304c\u5927\u304d\u3059\u304e\u307e\u3059\u3002http\://www.arduino.cc/en/Guide/Troubleshooting\#size \u306b\u306f\u3001\u5c0f\u3055\u304f\u3059\u308b\u30b3\u30c4\u304c\u66f8\u3044\u3066\u3042\u308a\u307e\u3059\u3002
+
+#: Sketch.java:1738
+Missing\ the\ */\ from\ the\ end\ of\ a\ /*\ comment\ */=\u300c/* */\u300d\u5f62\u5f0f\u306e\u30b3\u30e1\u30f3\u30c8\u306e\u300c*/\u300d\u304c\u3042\u308a\u307e\u305b\u3093\u3002
+
+#: Sketch.java:1780
+Sketch\ Disappeared=\u30b9\u30b1\u30c3\u30c1\u304c\u6d88\u6ec5\u3057\u3066\u3057\u307e\u3044\u307e\u3057\u305f\u3002
+
+#: Sketch.java:1781
+The\ sketch\ folder\ has\ disappeared.\n\ Will\ attempt\ to\ re-save\ in\ the\ same\ location,\nbut\ anything\ besides\ the\ code\ will\ be\ lost.=\u30b9\u30b1\u30c3\u30c1\u30d6\u30c3\u30af\u306e\u4fdd\u5b58\u5834\u6240\u30d5\u30a9\u30eb\u30c0\u304c\u7121\u304f\u306a\u3063\u3066\u3057\u307e\u3044\u307e\u3057\u305f\u3002\n\u74b0\u5883\u8a2d\u5b9a\u3067\u6307\u5b9a\u3057\u3066\u3044\u308b\u4fdd\u5b58\u5834\u6240\u306b\u4fdd\u5b58\u3057\u76f4\u3057\u307e\u3059\u3002\n\u3053\u306e\u30b9\u30b1\u30c3\u30c1\u3068\u4e00\u7dd2\u306b\u4fdd\u5b58\u3057\u3066\u3044\u305f\u30d5\u30a1\u30a4\u30eb\u306f\u5931\u308f\u308c\u308b\u304b\u3082\u3057\u308c\u307e\u305b\u3093\u3002
+
+#: Sketch.java:1794
+Could\ not\ re-save\ sketch=\u30b9\u30b1\u30c3\u30c1\u3092\u4fdd\u5b58\u3057\u76f4\u3059\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Sketch.java:1795
+Could\ not\ properly\ re-save\ the\ sketch.\ You\ may\ be\ in\ trouble\ at\ this\ point,\nand\ it\ might\ be\ time\ to\ copy\ and\ paste\ your\ code\ to\ another\ text\ editor.=\u30b9\u30b1\u30c3\u30c1\u3092\u6b63\u5e38\u306b\u4fdd\u5b58\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002\n\u4fdd\u5b58\u5148\u306b\u554f\u984c\u304c\u3042\u308b\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002\n\u5225\u306e\u30c6\u30ad\u30b9\u30c8\u30a8\u30c7\u30a3\u30bf\u3067\u30b9\u30b1\u30c3\u30c1\u3092\u958b\u304d\u3001\u30b3\u30fc\u30c9\u3092\u30b3\u30d4\u30fc\uff06\u30da\u30fc\u30b9\u30c8\u3057\u3066\u5225\u306e\u30d5\u30a1\u30a4\u30eb\u306b\u4fdd\u5b58\u3059\u308b\u3053\u3068\u3092\u304a\u3059\u3059\u3081\u3057\u307e\u3059\u3002
+
+#: Sketch.java:2044
+The\ sketch\ name\ had\ to\ be\ modified.\ Sketch\ names\ can\ only\ consist\nof\ ASCII\ characters\ and\ numbers\ (but\ cannot\ start\ with\ a\ number).\nThey\ should\ also\ be\ less\ less\ than\ 64\ characters\ long.=\u90fd\u5408\u306b\u3088\u308a\u3001\u30b9\u30b1\u30c3\u30c1\u306e\u540d\u524d\u3092\u5909\u66f4\u3057\u307e\u3057\u305f\u3002\u30b9\u30b1\u30c3\u30c1\u306e\u540d\u524d\u306f\u3001ASCII\u6587\u5b57\u304a\u3088\u3073\u6570\u5b57\uff08\u5148\u982d\u3092\u9664\u304f\uff09\u3067\u3042\u308a\u3001\uff16\uff14\u6587\u5b57\u4ee5\u4e0b\u3067\u3042\u308b\u3053\u3068\u304c\u5fc5\u8981\u3067\u3059\u3002
+
+#: EditorConsole.java:147
+Console\ Error=\u30b3\u30f3\u30bd\u30fc\u30eb\u306e\u7570\u5e38
+
+#: EditorConsole.java:148
+A\ problem\ occurred\ while\ trying\ to\ open\ the\nfiles\ used\ to\ store\ the\ console\ output.=\u30b3\u30f3\u30bd\u30fc\u30eb\u51fa\u529b\u3092\u4fdd\u5b58\u3059\u308b\u30d5\u30a1\u30a4\u30eb\u3092\u958b\u3053\u3046\u3068\u3057\u305f\u3089\u3001\n\u554f\u984c\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002
+
+#: debug/Uploader.java:52
+!https\://developer.berlios.de/bugs/?group_id\=3590=
+
+#: debug/Uploader.java:54 debug/Compiler.java:43
+#, java-format
+Compiler\ error,\ please\ submit\ this\ code\ to\ {0}=\u30b3\u30f3\u30d1\u30a4\u30e9\u306e\u30a8\u30e9\u30fc\u3067\u3059\u3002\u554f\u984c\u306e\u8d77\u304d\u305f\u30b9\u30b1\u30c3\u30c1\u3092{0}\u306b\u9001\u3063\u3066\u304f\u3060\u3055\u3044\u3002
+
+#: debug/Uploader.java:199
+#, java-format
+the\ selected\ serial\ port\ {0}\ does\ not\ exist\ or\ your\ board\ is\ not\ connected=\u30b7\u30ea\u30a2\u30eb\u30dd\u30fc\u30c8\u300c{0}\u300d\u304c\u9078\u629e\u3055\u308c\u3066\u3044\u307e\u3059\u304c\u3001\u305d\u306e\u30dd\u30fc\u30c8\u306f\u5b58\u5728\u3057\u306a\u3044\u304b\u3001\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u304c\u63a5\u7d9a\u3055\u308c\u3066\u3044\u307e\u305b\u3093\u3002
+
+#: debug/Uploader.java:203
+Device\ is\ not\ responding,\ check\ the\ right\ serial\ port\ is\ selected\ or\ RESET\ the\ board\ right\ before\ exporting=\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u304c\u5fdc\u7b54\u3057\u307e\u305b\u3093\u3002\u30b7\u30ea\u30a2\u30eb\u30dd\u30fc\u30c8\u304c\u6b63\u3057\u304f\u9078\u629e\u3055\u308c\u3066\u3044\u308b\u4e8b\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u307e\u305f\u3001\u66f8\u304d\u8fbc\u307f\u306e\u76f4\u524d\u306b\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u306e\u30ea\u30bb\u30c3\u30c8\u30dc\u30bf\u30f3\u3092\u62bc\u3057\u3066\u307f\u3066\u304f\u3060\u3055\u3044\u3002
+
+#: debug/Uploader.java:209
+Problem\ uploading\ to\ board.\ \ See\ http\://www.arduino.cc/en/Guide/Troubleshooting\#upload\ for\ suggestions.=\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u306b\u66f8\u304d\u8fbc\u3082\u3046\u3068\u3057\u307e\u3057\u305f\u304c\u3001\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\n\u3053\u306e\u30da\u30fc\u30b8\u3092\u53c2\u8003\u306b\u3057\u3066\u304f\u3060\u3055\u3044\u3002\nhttp\://www.arduino.cc/en/Guide/Troubleshooting\#upload
+
+#: debug/Uploader.java:213
+Wrong\ microcontroller\ found.\ \ Did\ you\ select\ the\ right\ board\ from\ the\ Tools\ >\ Board\ menu?=\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u3068\u901a\u4fe1\u3057\u305f\u3068\u3053\u308d\u3001\u9078\u629e\u3068\u7570\u306a\u308b\u30de\u30a4\u30b3\u30f3\u30c1\u30c3\u30d7\u304c\u5fdc\u7b54\u3057\u307e\u3057\u305f\u3002\u300c\u30c4\u30fc\u30eb\u300d\u30e1\u30cb\u30e5\u30fc\u306e\u300c\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u300d\u306e\u9078\u629e\u80a2\u304b\u3089\u3001\u6b63\u3057\u3044\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u3092\u9078\u3093\u3067\u304f\u3060\u3055\u3044\u3002
+
+#: debug/Compiler.java:41
+!http\://code.google.com/p/arduino/issues/list=
+
+#: debug/Compiler.java:79
+No\ board\ selected;\ please\ choose\ a\ board\ from\ the\ Tools\ >\ Board\ menu.=\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u304c\u9078\u3070\u308c\u3066\u3044\u307e\u305b\u3093\u3002\u300c\u30c4\u30fc\u30eb\u300d\u30e1\u30cb\u30e5\u30fc\u306e\u300c\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u300d\u306e\u9078\u629e\u80a2\u304b\u3089\u3001\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u3092\u9078\u3093\u3067\u304f\u3060\u3055\u3044\u3002
+
+#: debug/Compiler.java:346
+#, java-format
+{0}\ returned\ {1}={0}\u304c{1}\u3092\u8fd4\u3057\u307e\u3057\u305f\u3002
+
+#: debug/Compiler.java:350
+Error\ compiling.=\u30b3\u30f3\u30d1\u30a4\u30eb\u6642\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002
+
+#: debug/Compiler.java:389
+Please\ import\ the\ SPI\ library\ from\ the\ Sketch\ >\ Import\ Library\ menu.=\u300c\u30b9\u30b1\u30c3\u30c1\u300d\u30e1\u30cb\u30e5\u30fc\u306e\u300c\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u4f7f\u7528\u300d\u3067\u3001SPI\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u8aad\u307f\u8fbc\u3093\u3067\u304f\u3060\u3055\u3044\u3002
+
+#: debug/Compiler.java:390
+\nAs\ of\ Arduino\ 0019,\ the\ Ethernet\ library\ depends\ on\ the\ SPI\ library.\nYou\ appear\ to\ be\ using\ it\ or\ another\ library\ that\ depends\ on\ the\ SPI\ library.\n\n=\nArduino 0019\u4ee5\u964d\u3001Ethernet\u30e9\u30a4\u30d6\u30e9\u30ea\u306fSPI\u30e9\u30a4\u30d6\u30e9\u30ea\u306b\u4f9d\u5b58\u3057\u3066\u3044\u307e\u3059\u3002\nEthernet\u30e9\u30a4\u30d6\u30e9\u30ea\u307e\u305f\u306f\u305d\u306e\u4ed6\u306e\u3001SPI\u30e9\u30a4\u30d6\u30e9\u30ea\u306b\u4f9d\u5b58\u3059\u308b\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u4f7f\u7528\u3057\u3066\u3044\u308b\u3088\u3046\u3067\u3059\u306d\u3002\n\n
+
+#: debug/Compiler.java:395
+The\ 'BYTE'\ keyword\ is\ no\ longer\ supported.=\u300cBYTE\u300d\u30ad\u30fc\u30ef\u30fc\u30c9\u306f\u3001\u4f7f\u7528\u3067\u304d\u306a\u304f\u306a\u308a\u307e\u3057\u305f\u3002
+
+#: debug/Compiler.java:396
+\nAs\ of\ Arduino\ 1.0,\ the\ 'BYTE'\ keyword\ is\ no\ longer\ supported.\nPlease\ use\ Serial.write()\ instead.\n\n=\nArduino 1.0\u4ee5\u964d\u3001\u300cBYTE\u300d\u30ad\u30fc\u30ef\u30fc\u30c9\u306f\u4f7f\u7528\u3067\u304d\u306a\u304f\u306a\u308a\u307e\u3057\u305f\u3002\nSerial.write()\u3092\u4f7f\u7528\u3057\u3066\u304f\u3060\u3055\u3044\u3002\n\n
+
+#: debug/Compiler.java:401
+The\ Server\ class\ has\ been\ renamed\ EthernetServer.=\u300cServer\u300d\u30af\u30e9\u30b9\u306f\u300cEthernetServer\u300d\u306b\u540d\u79f0\u5909\u66f4\u3055\u308c\u307e\u3057\u305f\u3002
+
+#: debug/Compiler.java:402
+\nAs\ of\ Arduino\ 1.0,\ the\ Server\ class\ in\ the\ Ethernet\ library\ has\ been\ renamed\ to\ EthernetServer.\n\n=\nArduino 1.0\u4ee5\u964d\u3001Ethernet\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u300cServer\u300d\u30af\u30e9\u30b9\u306f\u3001\u300cEthernetServer\u300d\u306b\u540d\u79f0\u5909\u66f4\u3055\u308c\u307e\u3057\u305f\u3002\n\n
+
+#: debug/Compiler.java:407
+The\ Client\ class\ has\ been\ renamed\ EthernetClient.=\u300cClient\u300d\u30af\u30e9\u30b9\u306f\u300cEthernetClient\u300d\u306b\u540d\u79f0\u5909\u66f4\u3055\u308c\u307e\u3057\u305f\u3002
+
+#: debug/Compiler.java:408
+\nAs\ of\ Arduino\ 1.0,\ the\ Client\ class\ in\ the\ Ethernet\ library\ has\ been\ renamed\ to\ EthernetClient.\n\n=\nArduino 1.0\u4ee5\u964d\u3001Ethernet\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u300cClient\u300d\u30af\u30e9\u30b9\u306f\u3001\u300cEthernetClient\u300d\u306b\u540d\u79f0\u5909\u66f4\u3055\u308c\u307e\u3057\u305f\u3002\n\n
+
+#: debug/Compiler.java:413
+The\ Udp\ class\ has\ been\ renamed\ EthernetUdp.=\u300cUdp\u300d\u30af\u30e9\u30b9\u306f\u300cEthernetUdp\u300d\u306b\u540d\u79f0\u5909\u66f4\u3055\u308c\u307e\u3057\u305f\u3002
+
+#: debug/Compiler.java:414
+\nAs\ of\ Arduino\ 1.0,\ the\ Udp\ class\ in\ the\ Ethernet\ library\ has\ been\ renamed\ to\ EthernetClient.\n\n=\nArduino 1.0\u4ee5\u964d\u3001Ethernet\u30e9\u30a4\u30d6\u30e9\u30ea\u306e\u300cUdp\u300d\u30af\u30e9\u30b9\u306f\u3001\u300cEthernetUdp\u300d\u306b\u540d\u79f0\u5909\u66f4\u3055\u308c\u307e\u3057\u305f\u3002\n\n
+
+#: debug/Compiler.java:419
+Wire.send()\ has\ been\ renamed\ Wire.write().=\u300cWire.send()\u300d\u306f\u3001\u300cWire.write()\u300d\u306b\u540d\u79f0\u5909\u66f4\u3055\u308c\u307e\u3057\u305f\u3002
+
+#: debug/Compiler.java:420
+\nAs\ of\ Arduino\ 1.0,\ the\ Wire.send()\ function\ was\ renamed\ to\ Wire.write()\ for\ consistency\ with\ other\ libraries.\n\n=\nArduino 1.0\u4ee5\u964d\u3001\u300cWire.send()\u300d\u95a2\u6570\u306f\u3001\u4ed6\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u3068\u306e\u6574\u5408\u6027\u3092\u9ad8\u3081\u308b\u305f\u3081\u3001\u300cWire.write()\u300d\u306b\u540d\u79f0\u5909\u66f4\u3055\u308c\u307e\u3057\u305f\u3002\n
+
+#: debug/Compiler.java:425
+Wire.receive()\ has\ been\ renamed\ Wire.read().=\u300cWire.receive()\u300d\u306f\u3001\u300cWire.read()\u300d\u306b\u540d\u79f0\u5909\u66f4\u3055\u308c\u307e\u3057\u305f\u3002
+
+#: debug/Compiler.java:426
+\nAs\ of\ Arduino\ 1.0,\ the\ Wire.receive()\ function\ was\ renamed\ to\ Wire.read()\ for\ consistency\ with\ other\ libraries.\n\n=\nArduino 1.0\u4ee5\u964d\u3001\u300cWire.receive()\u300d\u95a2\u6570\u306f\u3001\u4ed6\u306e\u30e9\u30a4\u30d6\u30e9\u30ea\u3068\u306e\u6574\u5408\u6027\u3092\u9ad8\u3081\u308b\u305f\u3081\u3001\u300cWire.read()\u300d\u306b\u540d\u79f0\u5909\u66f4\u3055\u308c\u307e\u3057\u305f\u3002\n
+
+#: tools/format/src/AutoFormat.java:54 tools/AutoFormat.java:913
+No\ changes\ necessary\ for\ Auto\ Format.=\u6574\u5f62\u306e\u5fc5\u8981\u306f\u3042\u308a\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: tools/Archiver.java:48
+Archive\ Sketch=\u30b9\u30b1\u30c3\u30c1\u3092\u30a2\u30fc\u30ab\u30a4\u30d6\u3059\u308b\u3002
+
+#: tools/Archiver.java:59
+yyMMdd=yyyyMMdd
+
+#: tools/Archiver.java:74
+Couldn't\ archive\ sketch=\u30b9\u30b1\u30c3\u30c1\u3092\u30a2\u30fc\u30ab\u30a4\u30d6\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: tools/Archiver.java:75
+Archiving\ the\ sketch\ has\ been\ canceled\ because\nthe\ sketch\ couldn't\ save\ properly.=\u30b9\u30b1\u30c3\u30c1\u3092\u4fdd\u5b58\u3067\u304d\u306a\u304b\u3063\u305f\u305f\u3081\u3001\u30b9\u30b1\u30c3\u30c1\u306e\u30a2\u30fc\u30ab\u30a4\u30d6\u306f\u53d6\u308a\u3084\u3081\u307e\u3057\u305f\u3002
+
+#: tools/Archiver.java:109
+Archive\ sketch\ as\:=\u30b9\u30b1\u30c3\u30c1\u3092\u30a2\u30fc\u30ab\u30a4\u30d6\u3059\u308b\u540d\u524d\uff1a
+
+#: tools/Archiver.java:139
+Archive\ sketch\ canceled.=\u30b9\u30b1\u30c3\u30c1\u306e\u30a2\u30fc\u30ab\u30a4\u30d6\u3092\u53d6\u308a\u3084\u3081\u307e\u3057\u305f
+
+#: tools/AutoFormat.java:91
+Auto\ Format=\u81ea\u52d5\u6574\u5f62
+
+#: tools/AutoFormat.java:919
+Auto\ Format\ Canceled\:\ Too\ many\ right\ parentheses.=\u300c)\u300d\u304c\u591a\u3059\u304e\u308b\u305f\u3081\u3001\u81ea\u52d5\u6574\u5f62\u3092\u53d6\u308a\u3084\u3081\u307e\u3057\u305f\u3002
+
+#: tools/AutoFormat.java:922
+Auto\ Format\ Canceled\:\ Too\ many\ left\ parentheses.=\u300c(\u300d\u304c\u591a\u3059\u304e\u308b\u305f\u3081\u3001\u81ea\u52d5\u6574\u5f62\u3092\u53d6\u308a\u3084\u3081\u307e\u3057\u305f\u3002
+
+#: tools/AutoFormat.java:928
+Auto\ Format\ Canceled\:\ Too\ many\ right\ curly\ braces.=\u300c}\u300d\u304c\u591a\u3059\u304e\u308b\u305f\u3081\u3001\u81ea\u52d5\u6574\u5f62\u3092\u53d6\u308a\u3084\u3081\u307e\u3057\u305f\u3002
+
+#: tools/AutoFormat.java:931
+Auto\ Format\ Canceled\:\ Too\ many\ left\ curly\ braces.=\u300c{\u300d\u304c\u591a\u3059\u304e\u308b\u305f\u3081\u3001\u81ea\u52d5\u6574\u5f62\u3092\u53d6\u308a\u3084\u3081\u307e\u3057\u305f\u3002
+
+#: tools/AutoFormat.java:941
+Auto\ Format\ finished.=\u81ea\u52d5\u6574\u5f62\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002
+
+#: tools/FixEncoding.java:41 tools/FixEncoding.java:58
+#: tools/FixEncoding.java:79
+Fix\ Encoding\ &\ Reload=\u30a8\u30f3\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u3092\u4fee\u6b63
+
+#: tools/FixEncoding.java:57
+Discard\ all\ changes\ and\ reload\ sketch?=\u672a\u4fdd\u5b58\u306e\u5909\u66f4\u3092\u7834\u68c4\u3057\u3066\u30b9\u30b1\u30c3\u30c1\u3092\u8aad\u307f\u8fbc\u307f\u76f4\u3057\u307e\u3059\u304b\uff1f
+
+#: tools/FixEncoding.java:77
+An\ error\ occurred\ while\ trying\ to\ fix\ the\ file\ encoding.\nDo\ not\ attempt\ to\ save\ this\ sketch\ as\ it\ may\ overwrite\nthe\ old\ version.\ Use\ Open\ to\ re-open\ the\ sketch\ and\ try\ again.\n=\u30a8\u30f3\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u3092\u4fee\u6b63\u3057\u3088\u3046\u3068\u3057\u307e\u3057\u305f\u304c\u3001\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002\n\u4eca\u3053\u3053\u3067\u4fdd\u5b58\u3059\u308b\u3068\u3001\u4fee\u6b63\u524d\u306e\u30b9\u30b1\u30c3\u30c1\u3092\u304a\u304b\u3057\u306a\u5185\u5bb9\u3067\u4e0a\u66f8\u304d\u3057\u3066\u3057\u307e\u3046\n\u53ef\u80fd\u6027\u304c\u3042\u308a\u307e\u3059\u3002\u30b9\u30b1\u30c3\u30c1\u3092\u958b\u304d\u76f4\u3057\u3066\u3001\u3082\u3046\u4e00\u5ea6\u30a8\u30f3\u30b3\u30fc\u30c7\u30a3\u30f3\u30b0\u306e\n\u4fee\u6b63\u3092\u3057\u3066\u307f\u3066\u304f\u3060\u3055\u3044\u3002
+
+#: Editor.java:374
+No\ files\ were\ added\ to\ the\ sketch.=\u30b9\u30b1\u30c3\u30c1\u306b\u30d5\u30a1\u30a4\u30eb\u306f\u8ffd\u52a0\u3055\u308c\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Editor.java:381
+#, java-format
+{0}\ files\ added\ to\ the\ sketch.=\u30b9\u30b1\u30c3\u30c1\u306b\u30d5\u30a1\u30a4\u30eb\u3092{0}\u500b\u8ffd\u52a0\u3057\u307e\u3057\u305f\u3002
+
+#: Editor.java:492
+File=\u30d5\u30a1\u30a4\u30eb
+
+#: Editor.java:511
+Sketchbook=\u30b9\u30b1\u30c3\u30c1\u30d6\u30c3\u30af
+
+#: Editor.java:517
+Examples=\u30b9\u30b1\u30c3\u30c1\u4f8b
+
+#: Editor.java:522 Editor.java:1962
+Close=\u9589\u3058\u308b
+
+#: Editor.java:538
+Save\ As...=\u540d\u524d\u3092\u4ed8\u3051\u3066\u4fdd\u5b58
+
+#: Editor.java:564
+Page\ Setup=\u30d7\u30ea\u30f3\u30bf\u306e\u8a2d\u5b9a...
+
+#: Editor.java:572
+Print=\u5370\u5237...
+
+#: Editor.java:608
+Sketch=\u30b9\u30b1\u30c3\u30c1
+
+#: Editor.java:610
+Verify\ /\ Compile=\u691c\u8a3c\u30fb\u30b3\u30f3\u30d1\u30a4\u30eb
+
+#: Editor.java:637
+Import\ Library...=\u30e9\u30a4\u30d6\u30e9\u30ea\u3092\u4f7f\u7528
+
+#: Editor.java:642
+Show\ Sketch\ Folder=\u30b9\u30b1\u30c3\u30c1\u306e\u30d5\u30a9\u30eb\u30c0\u3092\u8868\u793a
+
+#: Editor.java:651
+Add\ File...=\u30d5\u30a1\u30a4\u30eb\u3092\u8ffd\u52a0...
+
+#: Editor.java:664
+Tools=\u30c4\u30fc\u30eb
+
+#: Editor.java:690
+Board=\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9
+
+#: Editor.java:698
+Serial\ Port=\u30b7\u30ea\u30a2\u30eb\u30dd\u30fc\u30c8
+
+#: Editor.java:703
+Programmer=\u66f8\u8fbc\u88c5\u7f6e
+
+#: Editor.java:707
+Burn\ Bootloader=\u30d6\u30fc\u30c8\u30ed\u30fc\u30c0\u3092\u66f8\u304d\u8fbc\u3080
+
+#: Editor.java:931
+serialMenu\ is\ null=serialMenu\u304c\u30ab\u30e9\u3067\u3059
+
+#: Editor.java:935 Editor.java:942
+name\ is\ null=\u540d\u524d\u304c\u30ab\u30e9\u3067\u3059
+
+#: Editor.java:994
+error\ retrieving\ port\ list=\u30dd\u30fc\u30c8\u540d\u306e\u4e00\u89a7\u3092\u53d6\u5f97\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Editor.java:1010
+Help=\u30d8\u30eb\u30d7
+
+#: Editor.java:1049
+Getting\ Started=\u521d\u5fc3\u8005\u5411\u3051\u30ac\u30a4\u30c9
+
+#: Editor.java:1057
+Environment=\u3053\u306e\u30bd\u30d5\u30c8\u306e\u4f7f\u3044\u65b9\u306b\u3064\u3044\u3066
+
+#: Editor.java:1065
+Troubleshooting=\u30c8\u30e9\u30d6\u30eb\u30b7\u30e5\u30fc\u30c6\u30a3\u30f3\u30b0
+
+#: Editor.java:1073
+Reference=\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9
+
+#: Editor.java:1081 Editor.java:2713
+Find\ in\ Reference=\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\u3067\u691c\u7d22
+
+#: Editor.java:1091
+Frequently\ Asked\ Questions=\u3088\u304f\u3042\u308b\u8cea\u554f
+
+#: Editor.java:1099
+Visit\ Arduino.cc=Arduino.cc\u30a6\u30a7\u30d6\u30b5\u30a4\u30c8\u3092\u958b\u304f
+
+#: Editor.java:1102
+!http\://arduino.cc/=
+
+#: Editor.java:1110
+About\ Arduino=Arduino\u306b\u3064\u3044\u3066...
+
+#: Editor.java:1124
+Edit=\u7de8\u96c6
+
+#: Editor.java:1127 Editor.java:1326
+Undo=\u5143\u306b\u623b\u3059
+
+#: Editor.java:1131 Editor.java:1361
+Redo=\u3084\u308a\u76f4\u3057
+
+#: Editor.java:1139 Editor.java:2637
+Cut=\u5207\u308a\u53d6\u308a
+
+#: Editor.java:1147 Editor.java:2645
+Copy=\u30b3\u30d4\u30fc
+
+#: Editor.java:1155 Editor.java:2653
+Copy\ for\ Forum=\u30d5\u30a9\u30fc\u30e9\u30e0\u6295\u7a3f\u5f62\u5f0f\u3067\u30b3\u30d4\u30fc\u3059\u308b
+
+#: Editor.java:1167 Editor.java:2661
+Copy\ as\ HTML=HTML\u5f62\u5f0f\u3067\u30b3\u30d4\u30fc\u3059\u308b
+
+#: Editor.java:1179 Editor.java:2669
+Paste=\u8cbc\u308a\u4ed8\u3051
+
+#: Editor.java:1188 Editor.java:2677
+Select\ All=\u5168\u3066\u9078\u629e
+
+#: Editor.java:1198 Editor.java:2687
+Comment/Uncomment=\u30b3\u30e1\u30f3\u30c8\u5316\u30fb\u5fa9\u5e30
+
+#: Editor.java:1206 Editor.java:2695
+Increase\ Indent=\u30a4\u30f3\u30c7\u30f3\u30c8\u3092\u5897\u3084\u3059
+
+#: Editor.java:1214 Editor.java:2703
+Decrease\ Indent=\u30a4\u30f3\u30c7\u30f3\u30c8\u3092\u6e1b\u3089\u3059
+
+#: Editor.java:1224
+Find...=\u691c\u7d22...
+
+#: Editor.java:1239
+Find\ Next=\u6b21\u3092\u691c\u7d22
+
+#: Editor.java:1801
+First\ select\ a\ word\ to\ find\ in\ the\ reference.=\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\u3067\u691c\u7d22\u3057\u305f\u3044\u8a00\u8449\u3092\u9078\u3093\u3060\u72b6\u614b\u306b\u3057\u3066\u304b\u3089\u5b9f\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002
+
+#: Editor.java:1808
+#, java-format
+No\ reference\ available\ for\ "{0}"=\u30ea\u30d5\u30a1\u30ec\u30f3\u30b9\u30de\u30cb\u30e5\u30a2\u30eb\u306b\u300c{0}\u300d\u306f\u3042\u308a\u307e\u305b\u3093\u3002
+
+#: Editor.java:1811
+#, java-format
+!{0}.html=
+
+#: Editor.java:1849 Editor.java:1866
+Done\ compiling.=\u30b3\u30f3\u30d1\u30a4\u30eb\u7d42\u4e86\u3002
+
+#: Editor.java:1958
+#, java-format
+Save\ changes\ to\ "{0}"?\ \ =\u5909\u66f4\u5185\u5bb9\u3092\u300c{0}\u300d\u306b\u66f8\u304d\u8fbc\u307f\u307e\u3059\u304b\uff1f
+
+#: Editor.java:1991
+\ If\ you\ don't\ save,\ your\ changes\ will\ be\ lost.= \u4fdd\u5b58\u3057\u306a\u3044\u3068\u3001\u5909\u66f4\u5185\u5bb9\u306f\u5931\u308f\u308c\u307e\u3059\u3002
+
+#: Editor.java:2002
+Don't\ Save=\u4fdd\u5b58\u3057\u306a\u3044
+
+#: Editor.java:2074
+Bad\ file\ selected=\u9593\u9055\u3063\u305f\u30d5\u30a1\u30a4\u30eb\u3092\u958b\u304d\u307e\u3057\u305f\u3002
+
+#: Editor.java:2075
+Processing\ can\ only\ open\ its\ own\ sketches\nand\ other\ files\ ending\ in\ .ino\ or\ .pde=\u3053\u306eIDE\u306f\u3001\u30d5\u30a1\u30a4\u30eb\u540d\u304c\u62e1\u5f35\u5b50.ino\u307e\u305f\u306f.pde\u3067\n\u7d42\u308f\u308b\u30d5\u30a1\u30a4\u30eb\u3060\u3051\u3092\u958b\u304f\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002
+
+#: Editor.java:2085
+#, java-format
+The\ file\ "{0}"\ needs\ to\ be\ inside\na\ sketch\ folder\ named\ "{1}".\nCreate\ this\ folder,\ move\ the\ file,\ and\ continue?=\u300c{0}\u300d\u3068\u3044\u3046\u30d5\u30a1\u30a4\u30eb\u306f\u3001\u300c{1}\u300d\u3068\u3044\u3046\u540d\u524d\u306e\u30d5\u30a9\u30eb\u30c0\u306e\u4e2d\u306b\u3042\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002\u81ea\u52d5\u7684\u306b\u3053\u306e\u30d5\u30a9\u30eb\u30c0\u3092\u4f5c\u3063\u3066\u3001\u30d5\u30a1\u30a4\u30eb\u3092\u4e2d\u306b\u5165\u308c\u307e\u3059\u304b\uff1f
+
+#: Editor.java:2094
+Moving=\u79fb\u52d5\u4e2d
+
+#: Editor.java:2107
+#, java-format
+A\ folder\ named\ "{0}"\ already\ exists.\ Can't\ open\ sketch.=\u300c{0}\u300d\u3068\u3044\u3046\u540d\u524d\u306e\u30d5\u30a9\u30eb\u30c0\u306f\u3059\u3067\u306b\u5b58\u5728\u3057\u307e\u3059\u3002\u30b9\u30b1\u30c3\u30c1\u3092\u958b\u3051\u307e\u305b\u3093\u3002
+
+#: Editor.java:2117
+Could\ not\ create\ the\ sketch\ folder.=\u30b9\u30b1\u30c3\u30c1\u30d5\u30a9\u30eb\u30c0\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3002
+
+#: Editor.java:2126
+Could\ not\ copy\ to\ a\ proper\ location.=\u30b3\u30d4\u30fc\u3059\u308b\u3079\u304d\u30d5\u30a9\u30eb\u30c0\u306b\u30d5\u30a1\u30a4\u30eb\u3092\u30b3\u30d4\u30fc\u3067\u304d\u307e\u305b\u3093\u3067\u3057\u305f\u3002
+
+#: Editor.java:2144
+Could\ not\ create\ the\ sketch.=\u30b9\u30b1\u30c3\u30c1\u3092\u4f5c\u6210\u3067\u304d\u307e\u305b\u3093\u3002
+
+#: Editor.java:2151
+#, java-format
+!{0}\ |\ Arduino\ {1}=
+
+#: Editor.java:2208 Editor.java:2246
+Saving...=\u4fdd\u5b58\u4e2d\u3067\u3059...
+
+#: Editor.java:2213 Editor.java:2249
+Done\ Saving.=\u4fdd\u5b58\u3057\u307e\u3057\u305f\u3002
+
+#: Editor.java:2255
+Save\ Canceled.=\u4fdd\u5b58\u3092\u4e2d\u6b62\u3057\u307e\u3057\u305f\u3002
+
+#: Editor.java:2281
+#, java-format
+Serial\ port\ {0}\ not\ found.\nRetry\ the\ upload\ with\ another\ serial\ port?=\u30b7\u30ea\u30a2\u30eb\u30dd\u30fc\u30c8\u300c{0}\u300d\u304c\u5b58\u5728\u3057\u307e\u305b\u3093\u3002\n\u30b7\u30ea\u30a2\u30eb\u30dd\u30fc\u30c8\u3092\u5909\u66f4\u3057\u3066\u3001\u3082\u3046\u4e00\u5ea6\u66f8\u304d\u8fbc\u307f\u307e\u3059\u304b\uff1f
+
+#: Editor.java:2316
+Uploading\ to\ I/O\ Board...=\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u306b\u66f8\u304d\u8fbc\u3093\u3067\u3044\u307e\u3059\u2026
+
+#: Editor.java:2333 Editor.java:2369
+Done\ uploading.=\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u3078\u306e\u66f8\u304d\u8fbc\u307f\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002
+
+#: Editor.java:2341 Editor.java:2377
+Upload\ canceled.=\u66f8\u304d\u8fbc\u307f\u3092\u53d6\u308a\u3084\u3081\u307e\u3057\u305f\u3002
+
+#: Editor.java:2405
+Save\ changes\ before\ export?=\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3092\u884c\u3046\u524d\u306b\u4fdd\u5b58\u3057\u307e\u3059\u304b\uff1f
+
+#: Editor.java:2420
+Export\ canceled,\ changes\ must\ first\ be\ saved.=\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3092\u53d6\u308a\u3084\u3081\u307e\u3057\u305f\u3002\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3092\u884c\u3046\u524d\u306b\u4fdd\u5b58\u3059\u308b\u5fc5\u8981\u304c\u3042\u308a\u307e\u3059\u3002
+
+#: Editor.java:2442
+Burning\ bootloader\ to\ I/O\ Board\ (this\ may\ take\ a\ minute)...=\u30de\u30a4\u30b3\u30f3\u30dc\u30fc\u30c9\u306b\u30d6\u30fc\u30c8\u30ed\u30fc\u30c0\u3092\u66f8\u304d\u8fbc\u3093\u3067\u3044\u307e\u3059\u2026
+
+#: Editor.java:2448
+Done\ burning\ bootloader.=\u30d6\u30fc\u30c8\u30ed\u30fc\u30c0\u306e\u66f8\u304d\u8fbc\u307f\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002
+
+#: Editor.java:2450 Editor.java:2454 Editor.java:2458
+Error\ while\ burning\ bootloader.=\u30d6\u30fc\u30c8\u30ed\u30fc\u30c0\u3092\u66f8\u304d\u8fbc\u3082\u3046\u3068\u3057\u307e\u3057\u305f\u304c\u3001\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002
+
+#: Editor.java:2485
+Printing...=\u5370\u5237\u3057\u3066\u3044\u307e\u3059...
+
+#: Editor.java:2502
+Done\ printing.=\u5370\u5237\u304c\u5b8c\u4e86\u3057\u307e\u3057\u305f\u3002
+
+#: Editor.java:2505
+Error\ while\ printing.=\u5370\u5237\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3057\u305f\u3002
+
+#: Editor.java:2509
+Printing\ canceled.=\u5370\u5237\u3092\u53d6\u308a\u3084\u3081\u307e\u3057\u305f\u3002
+
+#: Editor.java:2557
+#, java-format
+Bad\ error\ line\:\ {0}=\u30a8\u30e9\u30fc\u306e\u884c\u756a\u53f7\u300c{0}\u300d\u306f\u7bc4\u56f2\u5916\u3067\u3059\u3002
+
+#: Editor.java:2626
+Open\ URL=URL\u3092\u958b\u304f
+
+#: Platform.java:167
+No\ launcher\ available=\u5916\u90e8\u30d7\u30ed\u30b0\u30e9\u30e0\u8d77\u52d5\u30c4\u30fc\u30eb\u304c\u6709\u308a\u307e\u305b\u3093\u3002
+
+#: Platform.java:168
+Unspecified\ platform,\ no\ launcher\ available.\nTo\ enable\ opening\ URLs\ or\ folders,\ add\ a\ \n"launcher\=/path/to/app"\ line\ to\ preferences.txt=\u5916\u90e8\u30d7\u30ed\u30b0\u30e9\u30e0\u8d77\u52d5\u30c4\u30fc\u30eb\u304c\u6709\u308a\u307e\u305b\u3093\u3002URL\u3084\u30d5\u30a9\u30eb\u30c0\u3092\u81ea\u52d5\u7684\u306b\u958b\u304f\u6a5f\u80fd\u3092\u6709\u52b9\u306b\u3059\u308b\u306b\u306f\u3001preferences.txt\u306b"launcher\=/path/to/app"\u306e\u8a2d\u5b9a\u884c\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002
diff --git a/app/src/processing/app/Serial.java b/app/src/processing/app/Serial.java
index c84c949cd1e..93bfdac9e8f 100755
--- a/app/src/processing/app/Serial.java
+++ b/app/src/processing/app/Serial.java
@@ -26,6 +26,7 @@
//import processing.core.*;
import processing.app.debug.MessageConsumer;
+import static processing.app.I18n._;
import gnu.io.*;
@@ -141,16 +142,32 @@ public Serial(String iname, int irate,
}
}
} catch (PortInUseException e) {
- throw new SerialException("Serial port '" + iname + "' already in use. Try quiting any programs that may be using it.");
+ throw new SerialException(
+ I18n.format(
+ _("Serial port ''{0}'' already in use. Try quiting any programs that may be using it."),
+ iname
+ )
+ );
} catch (Exception e) {
- throw new SerialException("Error opening serial port '" + iname + "'.", e);
+ throw new SerialException(
+ I18n.format(
+ _("Error opening serial port ''{0}''."),
+ iname
+ ),
+ e
+ );
// //errorMessage("
before closing?
\ before\ closing?