Filename with tab returned by getFileName()

Our product uses JavaMail (1.4) to import mail messages from IMAP servers into our product.
One of our clients is currently having a problem that sometimes attachments are not imported because they cannot be saved due to incorrect characters in the filename. Part of the reason is that we did not sanitize the output from Part.getFileName() (a MimeBodyPart in this case)
We found out that in this case getFileName() returns a filename containing a tab (ascii 0x09), because (probably) their mailclient (Groupwise 7.0.2 HP) does not follow the intention of RFC 822 / 2822 (although it does conform to the letter of RFC 822) for the handling of long header fields. The mailclient has - as far as I can see - replaced a space in the filename by CR/LF and a tab (where I would expect CR/LF and a space).
When JavaMail decodes the header this is (of course) decoded by replacing the CR/LF + tab by a tab, and getFileName simply returns the value of the filename parameter of the Content-Disposition header (including the tab).
I would like to know:
- Is there a system property to 'fix' this behaviour
- Could you change the behaviour of getFileName() so it replaces any tabs in the filename with spaces (as far as I know there is no OS that allows tabs in filenames)

Hi..thanks a bunch! The quotes did help. But there was another glitch. I could not store the existing file name in $oldfilename variable as only that part of the filename before the tab got stored. So wrote the filenames in the folder into a list file and then renamed one by one. Below is the code:
for file in `ls $FilePath | sed 's/[     ]/,/g'`
do
echo $file >> $FilePath/"TabFiles"
done
ListFile=$FilePath/TabFiles
for line in `cat ${ListFile}`
do
OldFile="$(echo "$line" | sed 's/[,]/     /g')"
NewFile="$(echo "$line" | sed 's/[,]//g')"
if [ "$OldFile" != "$NewFile" ]
then
mv "$OldFile" "$NewFile"
fi
done
rm -f $FilePath/"TabFiles"
I know the idea looks rather clumsy. Is there a better way of handling this?

Similar Messages

  • Pasting in Numbers cell with tabs and returns

    I am converting my old Appleworks SS files to Numbers and it works fine when I just open the .cwk file with Numbers.  But when I try to paste in to a cell text with tabs and returns, unlike AW, it puts as much of the text as will fit in one cell, truncating the remainder.
    Is there some way to change Numbers preferences (or any other technique) to push text separated with tabs to the next cell right and for returns to push to the next row?

    I just figured out what I did wrong.  The text I was pasting in was enclosed in quote marks.  Once I removed those, it pasted in perfectly, just like AW.

  • Leaving JTextField with TAB

    A simple question really ... I have a JTextField that I would like to have the user exit from with TAB and get
    the same action as if they had left the field with the
    ENTER key, i.e., I'd like to be able to use the getText
    method to retrieve what the user entered. Currently, with
    no modifcations whatsoever to the JTextField, when I
    invoke getText after the user leaves the field with a TAB,
    getText returns NULL. I've tried just about everything,
    but can't get any of it to work (removeKeyStrokeBinding(), extending JTextField, etc.).
    Thanks in advance for any suggestions.

    As you have niticed this is not such a simple question at all.
    After some experimentation I decided to make the enter key cause the text field to loose focus.
    addKeyListener (new KeyAdapter()
    public void keyPressed (KeyEvent evt)
    int key = evt.getKeyCode();
    if (key == KeyEvent.VK_ENTER)
    transferFocus ();
    Then give the text field a focus listener
    class TextListener extends java.awt.event.FocusAdapter
    public void focusLost (FocusEvent e)
    // evalutate the text using getText()
    Which gets the field's content, validates it and then save it in the appropriate place.
    The advantage to this approach is the whole field edits are always done in the same place (the focus adapter), and the enter and tab actions appear the same to the user.
    The disadvantage is that, unless you know the initial value, you won't be able to tell if the value has changed.
    hope this helpds some.
    Terry

  • Creating list of folders from filenames with files organized in subfolders within

    Hi all. This is my first post in the Apple Support Community and I really hope that someone can help me as I'm using apple script for the first time.
    I have a list of hundreds of items that are each .jpg, .cr2, or .mov. Certain filenames have multiple extensions, ex: Q95A7170.CR2 & Q95A7170.jpg.
    I'm looking for an applescript or automator action that will allow me to create a folder out of each filename with 5 subfolders in it
    I need the subfolders to be called:
    AUDIO
    COLOR
    METADATA
    PICTURE
    PROXY
    In this instance I need all the .mov, .cr2, and .jpgs to be routed to the PICTURE folder. In later instances I'll need to route .mxf to PICTURE AND .xml .sif  & .thm to METADATA.
    So for example I have a list of that looks like this
    and I want a script that will make it look like this (i did all of this manually: creating the folders, renaming them, and putting the specific files into the picture folder)
    (not nearly a fraction of the list -- there are hundreds and hundreds of files)
    I've been researching applescripts for hours but the only script that i could make work and was very useful was this one to create the folders out of the names of the files:
    tell application "Finder"
              set selected to selection
              set current_folder to item 1 of selected
              set mlist to every file of current_folder
              repeat with this_file in mlist
                        set cur_ext to name extension of this_file
                        set new_name to text 1 thru -((length of cur_ext) + 2) of (name of this_file as text)
                        set new_folder to make new folder with properties {name:new_name} at current_folder
      move this_file to new_folder
              end repeat
    end tell
    Even with this script I had to manually copy all of the duplicate file named .jpgs out of the folder before it would properly run.
    Also I've found these scripts but I'm not sure what information to change. Like I said, I don't know much about code at all and I'm finding more research about it is just digging me deeper in a hole that I'm not entirely ready for.
    Here are the other two scripts that CLAIM they can do what I'm looking for, but I haven't gotten them to work.
    1.
    set pathToFolderOfTTUFiles to (path to the desktop as text) & "TTU:"
    tell application "Finder"
        set theFiles to every item of folder pathToFolderOfTTUFiles whose name extension is not "csv" and kind is not "Folder"
        repeat with theFile in theFiles
            set lengthOfExtension to (length of (theFile's name extension as text)) + 1
            set fileNameWithoutExtension to text 1 through -(lengthOfExtension + 1) of (theFile's name as text)
            set theFolder to make new folder at folder pathToFolderOfTTUFiles with properties {name:fileNameWithoutExtension}
            set theContentFolder to make new folder at theFolder with properties {name:"content"}
            make new folder at theContentFolder with properties {name:"archive"}
            set theContentDisplayFolder to make new folder at theContentFolder with properties {name:"display"}
            set theMetadataFolder to make new folder at theFolder with properties {name:"metadata"}
            make new folder at theMetadataFolder with properties {name:"archive"}
            set theMetadataDisplayFolder to make new folder at theMetadataFolder with properties {name:"display"}
            move theFile to theContentDisplayFolder
            set pathToCSV to pathToFolderOfTTUFiles & fileNameWithoutExtension & ".csv"
            if exists pathToCSV then move pathToCSV to theMetadataDisplayFolder
        end repeat
    end tell
    2.
    set myFolder to "FOLDERPATH"
    tell application "Finder" to set myFiles to folder myFolder's files as alias list
    repeat with aFile in myFiles
        tell application "System Events" to set {fileName, fileExt} to {name, name extension} of aFile
        set baseName to text 1 thru ((get offset of "." & fileExt in fileName) - 1) of fileName
        do shell script "mkdir -p " & (quoted form of (POSIX path of myFolder)) & "/" & baseName & "/{\"content\",\"metadata\"}/{\"display\",\"archive\"}"
        tell application "System Events"
            if fileExt is "pdf" then move aFile to (myFolder & ":" & baseName & ":content:display" as text)
            if fileExt is "csv" then move aFile to (myFolder & ":" & baseName & ":metadata:display" as text)
        end tell
    end repeat
    (the .pdf, .csv extensions are examples from the person who posted that discussion.)
    I tried using both of these codes but to no avail.
    Overall, this process is incredibly time-consuming and this is the first time I am using apple script so I know almost nothing about code.
    Also I don't know if this changes anything, but all of these files are on an external and I'm trying to save them back on this external.
    PLEASE HELP! I am a night assistant editor doing very tedious work at 3:00 AM or later and anything that would expedite this process would be so unbelievably appreciated. Please, someone who's more experience with code and who's smarter than I am on this topic, help me! I know there must be a way to automate this process!
    Please and so many thank yous! Really, this code would save me 40+ hours of eye-tiring work.
    Shelby

    This is how you'd do it in AppleScript.  I assume you can see how to expand it to different file extensions...
    set workFolder to "/path/to/folder"
    tell application "System Events"
      -- get files to work on
              set filesToProcess to files of folder workFolder whose visible is true
              repeat with thisFile in filesToProcess
                        set {fileName, fileExt} to {name, name extension} of thisFile
      -- get name of file without extension
                        set rootName to text 1 thru -((length of fileExt) + 2) of fileName
      -- make sure a correctly named folder exists
                        set targetFolder to my checkForFolder({parentFolder:workFolder, folderName:rootName})
      -- sort files into subFolders, making sure subfolders exist
                        if fileExt is "jpg" or fileExt is "cr2" or fileExt is "mov" then
                                  set targetSubfolder to my checkForFolder({parentFolder:targetFolder, folderName:"PICTURE"})
                                  move thisFile to targetSubfolder
                        else if fileExt is "xml" or fileExt is "sif" or fileExt is "thm" then
                                  set targetSubfolder to my checkForFolder({parentFolder:targetFolder, folderName:"METADATA"})
                                  move thisFile to targetSubfolder
                        else if fileExt is "mxf" then
                                  set targetSubfolder to my checkForFolder({parentFolder:targetFolder, folderName:"PICTURE"})
                                  move thisFile to targetSubfolder
                        else
      -- skip unknown file extensions
                        end if
              end repeat
    end tell
    to checkForFolder({parentFolder:fParent, folderName:fName})
      -- find or create a folder
              tell application "System Events"
                        if not (exists folder fName of folder fParent) then
                                  set output to POSIX path of (make new folder at end of folder fParent with properties {name:fName})
                        else
                                  set output to (POSIX path of (folder fName of folder fParent))
                        end if
              end tell
      -- returns a POSIX path
              return output
    end checkForFolder

  • How do you carry out an event if a job finishes with a return code 4?

    Hi
    A job which would complete successfully in SAP via the SM36 scheduler completes with an 'Error' in Redwood CPS because there are errors within the spool and it ends with a return code 4.
    We don't want this to error in Redwood CPS, so we have set the return code mapping to Completed with entries of 0 and 4.
    I.e. whether or not there is an error in the spool, the job will complete successfully in Redwood CPS.
    However, we want to be alerted if there are errors in the spool.
    How do we do this? The manual says "A job can raise one or more events when the job gets a specific job status or return code" - where is this set? I can see on the 'Event' tab of a job definition you can raise an Event when the job enters a specific status, but I only want to raise an event (or carry out a step / send an email etc) if I get a return code 4 (none of the job statuses are relevant) - how can I do this?
    Thanks
    Ross

    Hi Anton
    Thanks for that. However, it's a bit more complicated...
    I have a job chain with 2 steps. Any one of the two steps can have an error in the spool which by default in Redwood CPS result in the job ending in status Error. I don't want this, as the second step should still run if the first step ran okay with with errors in the spool (but shouldn't run at all if the 1st step fails completely). I.e. setting 'on Error goto step 2' or having no dependancy at all is not what we want.
    Therefore, I set the return code mapping on Completed to return codes 0 and 4. I.e. if step 1 has an error in the spool (return code 4) it still ends as 'Completed' and step 2 runs.
    Our problem is that we want to be alerted if there is a return code 4 (error in the spool). I tried as you suggested by entering on the 'Raise Event' tab of the job chain to raise an event on status 'Error' with a return code of 4. But no event was raised. I think this is because the return code mapping is setting the status to 'Completed' (on return code 0 or 4) BEFORE the software checks the status; i.e. the status is actually 'Completed' (rc=4) and not 'Error' (rc=4) so an event is not raised.
    Ideally I want to set the Event to be raised on status 'Completed' with a return code 4 - but when I select 'Completed' the 'Error Code' box is greyed out.
    I.e. can't set this - I can only set on a generic 'Completed' and I don't want to raise a message if the status is Completed but the return code is 0....
    Any ideas??
    Ross

  • Problem with tabbed panel

    I have a problem with tabbed panel...this panel has 3 columns, I copied to each of them a diffrent text (diffrent height)...I expected to obtain diffrent working area of column, for example  1st column-height 7500 px, 2nd-1500 px, 3rd-2500 px, but I received one height 7500 px, each column has been formatted to this size....below a text I have “empty space”- (it is a diffrence between working area and text area)...I put the text to the 1st column for example 7200 px height, empty space below this text is 300 px I received 7500 px of working area in this column, here the problem doesn`t exist but….2nd column i have height of text for example 1300 px, below this text i have 6200 px empty space...It should be height 1300 px of text and maybe 200 px of empty space...so the working area could have at 1500 px not 7500 px of height....I try to change it (to for example 1500 px) but it still  return to the basic 7500 px height and can`t do  it...The solution is to use another form like. the accordion form..but it is a row form….when you put a diffrent sized text (height) you will receive diffrent size of working  area (height), you obtain 7200px text +300 px empty space=7500 working area in 1st row.. 1200 px text + 300 px empty space=1500 workin area px in 2nd row and 2500 working area px in 3rd row…everything is fine in this form…each row has been formatted to the different size of height…but I prefer to use a tabbed panel (column form) instead a accordion form.…I don`t to waste the time to correct the code in html text editor like PSPad…
    Best Regards
    Kamil

    A couple of threads here that should answer your query.
    http://forums.adobe.com/message/5080345
    http://forums.adobe.com/message/5104253
    Thanks,
    Vinayak

  • Aaagh! Help needed with tabs, I just don't get how to use them.

    I have done a search for a beginners guide on how to make the following setting, without any luck, so I felt the need to start a new topic.
    I am writing a contents page for a collection of poetry and I have (so far) written out those contents so they are aligned to the left of the page. So there is a number bullet, then the title of the poem, as follows:
    1. Abend
    2. Der Allwissende
    3. Im hohen Alter
    What I want is to put the page number for each poem (each poem has it's own page), on the same line, but aligned to the right side of the page. Like this:
    Introduction +Page 5+
    1. Abend 6
    2. Der Allwissende 7
    3. Im hohen Alter 8
    I should mention in case it's relevant, I am using text boxes for the contents pages.
    Hoping someone can help soon.

    Do as you have done. Set the lists style to "None".
    Then simply click on the ruler where you want to have tabs. To change the tab to left/right/centred or decimal keep clicking on the tab or right mouse click on the tab and choose which you want.
    So to create what you say you need, going from left to right.
    1. *A right tab* to catch the right edge of the number say 1cm from the left
    2. *A left tab* to catch the beginning of the text say 1.5cm from the left
    3. *A right tab* or decimal tab on the far right of the ruler to catch the page number
    To get rid of tabs just pull them away from the ruler and they disappear in a puff of smoke.
    You will need to type a tab at the beginning of each line with a number to push it over to the first (right hand) tab.
    Refinements are:
    1. *Hanging indent.* This makes the number sit to the left and the following paragraph to align to the 2nd tab. Do this by sliding the left margin stack to the position of the 2nd tab, then drag the flat bar on the top back to the left margin.
    2. *Leading tab.* In +Inspector > Text (4th tab) > Tabs > Click on the 3rd tab in the list > Leader > Choose line style+
    Just the usual reminder that tabs are a style attached to whatever paragraph that you are in and continue on with every return until you change them to something else.
    Having set up these tabs the way you like them, it would be a good idea to turn them into a named paragraph style for reuse elsewhere.
    Peter

  • Will I be able to select the URL bar by pressing F6 with tabs on top again?

    In previous versions of FF (lo, with tabs on bottom) I could select the URL bar's text simply by pressing F6. With tabs on top I press F6 and select the tab itself, not the URL bar.
    Is there a setting I can change where the functionality will be returned to what it once was?

    There is an open bug report concerning this behaviour, it is not blocking the release of Firefox 4 so it may not get fixed prior to the release of Firefox 4. An alternative keyboard shortcut is Control+L

  • Transfer data in unix with tab-delimited

    Hi,
    How can we transfer data to unix with tab-delimited? I have incoming file with tab-delimited and want to copy as backup file in another folder in unix. When I read the incoming file, tab separator is translated into '#' so when I do transfer data to the backup folder, the file contains '#'.
    Is there a way to transfer data in tab-delimited?
    thank you
    alia

    try to use delimiter cl_abap_char_utilities=>HORIZONTAL_TAB.
    here is a piece of code:
    REPORT  ztestfile                               .
    DATA: BEGIN OF gt_file_out OCCURS 0,
            filed(2000),
          END OF gt_file_out.
    START-OF-SELECTION.
      DATA: lv_file_out LIKE filename-fileextern.
      CONCATENATE 'Hello' 'World' INTO gt_file_out SEPARATED
        BY cl_abap_char_utilities=>horizontal_tab.
      APPEND gt_file_out.
      lv_file_out = '
    XXXX\XXXX\mytest1.txt'.
      OPEN DATASET lv_file_out FOR OUTPUT IN TEXT MODE ENCODING DEFAULT.
      LOOP AT gt_file_out.
        TRANSFER gt_file_out TO lv_file_out.
      ENDLOOP.
      CLOSE DATASET lv_file_out.
    Message was edited by: joseph fryda

  • Vala texteditor with tabs

    Hi all,
    I've been cooking up a new text editor written in Vala in the line of Leafpad, but I want mine to have Tabs support. The problem is that implementing Tabs with Vala is not easy (at least for me), so any help from you vala gurus would be extremely apreciated.
    Multipad - A simple Gtk text editor with tabs
    This program is free software; you can redistribute it and/or modify
    it under the terms of the GNU General Public License as published by
    the Free Software Foundation; either version 2 of the License, or
    (at your option) any later version.
    This program is distributed in the hope that it will be useful,
    but WITHOUT ANY WARRANTY; without even the implied warranty of
    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
    GNU General Public License for more details.
    You should have received a copy of the GNU General Public License
    along with this program; if not, write to the Free Software
    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
    MA 02110-1301, USA.
    Written by António Godinho (buyapentiumjerk_AT_gmail.com) using Vala 0.11.2
    Compile with valac --pkg gtk+-2.0 multipad.vala
    using Gtk;
    class MainWindow : Window
    //public DocumentTab tab {get; set;}
    //public DocumentTextView view {get; set;}
    private DocumentNotebook note_book;
    private FileChooserDialog file_chooser_dialog;
    private File file_name {get; default = null; set;}
    construct
    /* TODO - Fallback defaults go here */
    stdout.printf ("MainWindow constructed\n");
    private MainWindow ()
    title = "Multipad";
    position = WindowPosition.CENTER;
    set_default_size (700, 500);
    note_book = new DocumentNotebook ();
    var h_box_main = new HBox (false, 0);
    h_box_main.border_width = 6;
    var v_box_body = new VBox (false, 0);
    v_box_body.pack_start (create_menu_bar (), false, true, 0);
    v_box_body.pack_end (h_box_main, true, true, 0);
    h_box_main.pack_start (note_book, true, true, 0);
    add (v_box_body);
    note_book.add_tab ("123");
    private Widget create_menu_bar ()
    var menu_file = new Menu ();
    var image_menu_item_new = new ImageMenuItem.from_stock (Stock.NEW, null);
    image_menu_item_new.activate.connect (on_new_clicked);
    menu_file.add (image_menu_item_new);
    var image_menu_item_open = new ImageMenuItem.from_stock (Stock.OPEN, null);
    image_menu_item_open.activate.connect (on_open_clicked);
    menu_file.add (image_menu_item_open);
    var image_menu_item_save = new ImageMenuItem.from_stock (Stock.SAVE, null);
    //image_menu_item_save.activate.connect (on_save_clicked);
    menu_file.add (image_menu_item_save);
    var image_menu_item_save_as = new ImageMenuItem.from_stock (Stock.SAVE_AS, null);
    //image_menu_item_save_as.activate.connect (on_save_as_clicked);
    menu_file.add (image_menu_item_save_as);
    var separator_menu_item = new SeparatorMenuItem();
    menu_file.add (separator_menu_item);
    var image_menu_item_quit = new ImageMenuItem.from_stock (Stock.QUIT, null);
    //image_menu_item_quit.activate.connect (on_quit_clicked);
    menu_file.add (image_menu_item_quit);
    var menu_item_file = new MenuItem.with_mnemonic ("_File");
    menu_item_file.set_submenu (menu_file);
    var menu_bar = new MenuBar ();
    menu_bar.add (menu_item_file);
    return menu_bar;
    public void on_new_clicked ()
    note_book.add_tab ("321---2nd");
    private void on_open_clicked ()
    file_chooser_dialog = new FileChooserDialog ("Open file", this, FileChooserAction.OPEN, Stock.CANCEL, ResponseType.CANCEL, Stock.OPEN, ResponseType.ACCEPT);
    if (file_chooser_dialog.run () == ResponseType.ACCEPT)
    file_name = file_chooser_dialog.get_file ();
    //document_text_view.text_buffer.open_file (file_name);
    file_chooser_dialog.destroy ();
    public static int main (string [] args)
    Gtk.init (ref args);
    var window = new MainWindow ();
    window.destroy.connect (Gtk.main_quit);
    window.show_all ();
    Gtk.main ();
    return 0;
    class DocumentTextBuffer : TextBuffer
    public DocumentTab tab;
    private File file_name {get; default = null; set;}
    construct
    /* TODO - Fallback defaults go here */
    stdout.printf ("DocumentTextBuffer constructed\n");
    public DocumentTextBuffer ()
    /* TODO - send file_name to update tab label with new file_name */
    notify["file-name"].connect (() =>
    stdout.printf (file_name.get_uri () + "\n");
    /* TODO - Use GIO instead (File.load_contents ()) */
    public void open_file (File file_name)
    this.file_name = file_name;
    try
    string text;
    FileUtils.get_contents (file_name.get_basename (), out text);
    this.set_text (text);
    catch (Error e)
    stdout.printf ("ERROR: %s\n", e.message);
    /* TODO - Use GIO instead (File.replace_contents ()) */
    public void save_file (File file_name)
    try
    string text;
    TextIter start_iter, end_iter;
    this.get_bounds (out start_iter, out end_iter);
    text = this.get_text (start_iter, end_iter, true);
    FileUtils.set_contents (file_name.get_basename (), text, -1);
    this.file_name = file_name;
    catch (Error e)
    stdout.printf ("ERROR: %s\n", e.message);
    class DocumentTextView : TextView
    construct
    /* TODO - Fallback defaults go here */
    stdout.printf ("DocumentTextView constructed\n");
    public DocumentTextView (DocumentTextBuffer doc = new DocumentTextBuffer ())
    this.buffer = doc;
    class DocumentTab : HBox
    public Label label_notebook;
    public Button button_notebook_close;
    private Image image_button_notebook_close;
    public signal void on_button_notebook_close_clicked ();
    construct
    /* TODO - Fallback defaults go here */
    stdout.printf ("DocumentTab constructed\n");
    public DocumentTab (string tab_label)
    Gtk.rc_parse_string ("""
    style "my-button-style"
    GtkWidget::focus-padding = 0
    GtkWidget::focus-line-width = 0
    xthickness = 0
    ythickness = 0
    widget "*.my-close-button" style "my-button-style"
    button_notebook_close = new Button ();
    button_notebook_close.set_relief (Gtk.ReliefStyle.NONE);
    button_notebook_close.name = "my-close-button";
    image_button_notebook_close = new Image.from_stock (Stock.CLOSE, Gtk.IconSize.MENU);
    button_notebook_close.add (image_button_notebook_close);
    button_notebook_close.tooltip_text = (" Close document ");
    button_notebook_close.clicked.connect (() => this.on_button_notebook_close_clicked ());
    label_notebook = new Label (tab_label);
    this.pack_start (label_notebook, true, true, 0);
    this.pack_end (button_notebook_close, true, true, 0);
    this.show_all ();
    class DocumentNotebook : Notebook
    public DocumentNotebook ()
    this.set_tab_pos (PositionType.TOP);
    this.set_scrollable (true);
    this.page_added.connect (() =>
    stdout.printf ("NB: New Page added: " + (this.get_n_pages () -1).to_string () + "\n");
    this.page_removed.connect (() =>
    stdout.printf ("NB: Page removed: " + (this.get_current_page () + 1).to_string () + "\n");
    this.switch_page.connect ((page, page_num) =>
    stdout.printf ("NB: Page switched: " + (this.get_current_page () + 1).to_string () + "\n");
    this.page_reordered.connect (() =>
    stdout.printf ("NB: Page reordered to: " + this.get_current_page ().to_string () + "\n");
    public void add_tab (string tab_label)
    var tab = new DocumentTab (tab_label);
    var view = new DocumentTextView ();
    tab.on_button_notebook_close_clicked.connect (() => this.on_button_notebook_close_clicked ());
    var v_box_text_editor_body = new VBox (false, 3);
    var scrolled_window = new ScrolledWindow (null, null);
    scrolled_window.set_policy (PolicyType.AUTOMATIC, PolicyType.AUTOMATIC);
    scrolled_window.shadow_type = ShadowType.ETCHED_IN;
    scrolled_window.add (view);
    v_box_text_editor_body.pack_start (scrolled_window, true, true, 0);
    var v_box_notebook_body = new VBox (false, 0);
    v_box_notebook_body.border_width = 2;
    v_box_notebook_body.add (v_box_text_editor_body);
    this.append_page (v_box_notebook_body, tab);
    this.child_set (v_box_notebook_body, "tab-expand", false, null);
    this.set_tab_reorderable (v_box_notebook_body, true);
    this.show_all ();
    this.set_current_page (this.get_n_pages () - 1);
    public void on_button_notebook_close_clicked ()
    var note_book_page = this.get_nth_page (this.get_current_page());
    note_book_page.destroy();
    Many thanks,
    spook

    Luca,
    The edittext control is very limited, it doesn't really live up to its name. It would be hopeless to attempt to do an editor in ScriptUI.
    Peter

  • I am using InDesign CS5. I have a body of text which is ranged left with tabbed indents. My client now wants the copy to be justifed, keeping the tabbed indents. Help and advice needed please!

    I am using InDesign CS5. I have a body of text which is ranged left with tabbed indents. My client now wants the copy to be justifed, keeping the tabbed indents. Help and advice needed please!

    Hi
    That screen grab helps a lot. There’s a much easier way of doing what you’re doing.
    Remove all your tabs and set the text in justified paragraphs.
    I’ve typed in dummy text in the example I made below, but after “19.1” put in a space and put your blinking cursor after the space and before the ’N’ of ‘Notices'.
    Then hold down the Command key and hit Backspace (on Mac at least - it’s the key between the Inverted commas/ apostrophe key and the return key).
    The text will jump into place the way you want it to.
    Hope that helps
    Paul
    PS You can set a tab, instead of using a space, in the description I gave above. So, after 19.1 or 19.2 or 19.185 etc etc insert a tab, then hit the Command Backspace after every paragraph number and they'll all line up exactly together. You'll find that editing text within the paragraphs
    after you've set it will be LOADS easier this way.
    You can put the tab anywhere you want it to be using 'Command-ShiftT' and putting a 'left align' tab just after the number. Just type the Command Backspace after the paragraph number and it'll work

  • Sliding panels with tabs

    Hello again,
    Is there some way to change the orientation of tabs to bottom
    in this example: Sliding panels with tabs?
    that's all folks,
    morpheto

    You need to look at the code in the load handler of this JS
    file:
    http://labs.adobe.com/technologies/spry/home_assets/spry_home.js
    If you add a tab, you need to add it to the list of items to
    select in this statement:
    Spry.$$("#nutshell, #widgets, #data,
    #effects").addEventListener("click", function(){
    switchTab(this.id); return false; }, false);
    --== Kin ==--

  • Office Web Apps Server 2013 - Word Web App - Problem with Tab space

    Hello We have Office Web Apps Server 2013 running with SharePoint 2013.  Users Editing a Word document with Office Web Apps, can't use "Tabs", any Word document with Tabs; the tabs are replaced with a single space.
    Has anyone noticed this?  Is this a bug?
    -thanks
    thomas
    -Tom

    Yes, currently the Word Web App does not support
    Tab Keyboard shortcut for editing document content .
    For more information, you can have a look at
    the article:
    http://office.microsoft.com/en-us/office-online-help/keyboard-shortcuts-in-word-online-HA010378332.aspx?CTT=5&origin=HA010380212
    http://social.technet.microsoft.com/Forums/en-US/3f5978d3-67a1-4c8c-981f-32493d72610b/office-web-apps-server-2013-word-web-app-problem-with-tab-space?forum=sharepointgeneral

  • Fire fox opens with tabs from preveous session not home page in tools under options and tab general I have start up with home page but all tabs from previous session open instead

    fire fox opens with tabs from preveous session not home page in tools under options and tab general I have start up with home page but all tabs from previous session open instead

    It is possible that there is a problem with the files [http://kb.mozillazine.org/sessionstore.js sessionstore.js] and sessionstore.bak in the [http://kb.mozillazine.org/Profile_folder_-_Firefox Profile Folder]
    Delete [http://kb.mozillazine.org/sessionstore.js sessionstore.js] and sessionstore.bak in the [http://kb.mozillazine.org/Profile_folder_-_Firefox Profile Folder]
    * Help > Troubleshooting Information > Profile Directory: Open Containing Folder
    If you see files sessionstore-##.js with a number in the left part of the name like sessionstore-1.js then delete those as well.
    Deleting sessionstore.js will cause App Tabs and Tab Groups to get lost, so you will have to create them again (make a note).
    See:
    * http://kb.mozillazine.org/Session_Restore

  • How to count number of documents in a page with Tabs

    We have a page with Tabs and sub tabs for each Tab. There is no limit for the Tabs and Sub Tabs. I mean a Tab can have several child tabs and each child tab can have n number of Sub Tabs. We have documents laoded on Tab level and sub Tab level also.
    I want to display the count and size of the documents loaded on a page. That is If Page1 has 2 tabs and each tab has 2 sub tabs and on each sub tab there are 2 documents of 10 MB then I should be able to display like this.
    Page1 - number of documents: 8 , documents total size 80 MB.
    By linking documents table and apges table I am able to get the results by tab not by page.
    Any advice is appreciated.
    Thanks.
    Satya

    Hi Satya -
    It seems you should be able to get the information you are after in the "wwsbr_all_items" view. The folder_ID is the page ID. The content mangement views are documented here: http://www.oracle.com/technology/products/ias/portal/html/plsqldoc/pldoc1012/wwsbr_api_view.html%0A%0A#WWSBR_ALL_ITEMS
    Hope this helps,
    Candace

Maybe you are looking for

  • Vendor/Customer Age analysis

    hello the std vendor/creditor age analyses reports don't have 30/60/90 day analysis columns. how do you adaapt the reports to analyse by 30 day periods and which reports do you use? this is ecc 6 classic g/l thanks.

  • Bank accounts query

    Dear All , this is regarding maintaining different bank accounts for EoU and Domestic division: How do we ensure that we pick the right bank a/c if we  have a common vendor between domestic and eou? Have we need to  split the vendors in domestic and

  • Error when adding MB servers to a DAG in Exchange 2013

    Hello, I have already pre-staged my CNO in active directory. I also have created my DAG in exchange 2013. When I try to add my mailbox servers to my DAG, I receive the following error. I also tried to install the Failover Clustering feature manually,

  • HT4972 Failed update from ios 4 to the latest 6.

    Hi, As above i have tried to update my fathers iphone from ios4 to the latest version 6, i did the back up ok, installed the software, but now it unresponsive, we haven't even got the " connect to itunes logo" it keeps saying that activation failed b

  • I downloaded Dreamweaver CC for Mac-need to reinstall.

    I downloaded Dreamweaver CC for Mac but got an error message for it that it wasn't properly installed.  I can't download it again. Please advise. Thanks, Greg