Git Product home page Git Product logo

tabler's People

Contributors

bux avatar kh-jda avatar mamilacan avatar tourorist avatar zakant avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

tabler's Issues

Tab overflow handlng

This is concerning how tabs are handled when they don't fit on screen.

I think wrapping them onto second (third etc.) line would be more convenient than scrolling (current model), because having all tabs on screen would result in faster work flow. Scrolling actually hinders user interaction by introducing the extra step of having to first scroll left/right before selecting a tab.

I suggest switching to wrap—thus avoiding extra steps entirely—or, at least adding a button for drop down menu where user would see all tabs that are currently off screen.

Add EOF newline support

Currently if the last line is an empty line tabler will remove it, while other text editors can be configured to add it automatically for nicer Git commits, so there is a clash, adding, removing, adding, removing...

Would be nice if tabler would recognize this and retain it as it is (either there is an empty last line or there isn't), or at least a setting to toggle adding it or removing it if there is one.

Files are saved with BOM when source is without

When Tabler is used to edit files encoded in utf-8 without BOM character they will be saved back in utf-8 with BOM.

I think it would be reasonable to leave files original encoding when saving them.

UnhandledException when opening single stringtable project

Here's the project I'm trying to open:
http://11rdp.fr/rdp/atelier/DrongosArtillery.7z (368K)

Error Report Output (in French sorry):
************** Texte de l'exception **************
System.ArgumentException: Un élément avec la même clé a déjà été ajouté.
à System.ThrowHelper.ThrowArgumentException(ExceptionResource resource)
à System.Collections.Generic.Dictionary2.Insert(TKey key, TValue value, Boolean add) à tabler.XmlHelper.ParseXmlFiles(List1 allStringTablePaths)
à tabler.TranslationManager.GetTranslationComponents(DirectoryInfo lastPathToDataFiles, Boolean insertMod)
à tabler.GridUI.openModFolderToolStripMenuItem_Click(Object sender, EventArgs e)
à System.Windows.Forms.ToolStripItem.RaiseEvent(Object key, EventArgs e)
à System.Windows.Forms.ToolStripMenuItem.OnClick(EventArgs e)
à System.Windows.Forms.ToolStripItem.HandleClick(EventArgs e)
à System.Windows.Forms.ToolStripItem.HandleMouseUp(MouseEventArgs e)
à System.Windows.Forms.ToolStripItem.FireEventInteractive(EventArgs e, ToolStripItemEventType met)
à System.Windows.Forms.ToolStripItem.FireEvent(EventArgs e, ToolStripItemEventType met)
à System.Windows.Forms.ToolStrip.OnMouseUp(MouseEventArgs mea)
à System.Windows.Forms.ToolStripDropDown.OnMouseUp(MouseEventArgs mea)
à System.Windows.Forms.Control.WmMouseUp(Message& m, MouseButtons button, Int32 clicks)
à System.Windows.Forms.Control.WndProc(Message& m)
à System.Windows.Forms.ScrollableControl.WndProc(Message& m)
à System.Windows.Forms.ToolStrip.WndProc(Message& m)
à System.Windows.Forms.ToolStripDropDown.WndProc(Message& m)
à System.Windows.Forms.Control.ControlNativeWindow.OnMessage(Message& m)
à System.Windows.Forms.Control.ControlNativeWindow.WndProc(Message& m)
à System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

************** Assemblys chargés **************
mscorlib
Version de l'assembly : 4.0.0.0
Version Win32 : 4.0.30319.18331 built by: FX45GDRSTAGE

CodeBase : file:///C:/Windows/Microsoft.NET/Framework/v4.0.30319/mscorlib.dll

tabler
Version de l'assembly : 0.3.1.0
Version Win32 : 0.3.1

CodeBase : file:///C:/Users/CMFDR/Documents/tabler-v0.3.1/tabler.exe

System.Core
Version de l'assembly : 4.0.0.0
Version Win32 : 4.0.30319.18331 built by: FX45GDRSTAGE

CodeBase : file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Core/v4.0_4.0.0.0__b77a5c561934e089/System.Core.dll

System
Version de l'assembly : 4.0.0.0
Version Win32 : 4.0.30319.18331 built by: FX45GDRSTAGE

CodeBase : file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System/v4.0_4.0.0.0__b77a5c561934e089/System.dll

System.Windows.Forms
Version de l'assembly : 4.0.0.0
Version Win32 : 4.0.30319.18331 built by: FX45GDRSTAGE

CodeBase : file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms/v4.0_4.0.0.0__b77a5c561934e089/System.Windows.Forms.dll

System.Drawing
Version de l'assembly : 4.0.0.0
Version Win32 : 4.0.30319.18331 built by: FX45GDRSTAGE

CodeBase : file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing/v4.0_4.0.0.0__b03f5f7f11d50a3a/System.Drawing.dll

System.Drawing.resources
Version de l'assembly : 4.0.0.0
Version Win32 : 4.0.30319.17929 built by: FX45RTMREL

CodeBase : file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Drawing.resources/v4.0_4.0.0.0_fr_b03f5f7f11d50a3a/System.Drawing.resources.dll

System.Xml.Linq
Version de l'assembly : 4.0.0.0
Version Win32 : 4.0.30319.18331 built by: FX45GDRSTAGE

CodeBase : file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml.Linq/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.Linq.dll

System.Xml
Version de l'assembly : 4.0.0.0
Version Win32 : 4.0.30319.18331 built by: FX45GDRSTAGE

CodeBase : file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Xml/v4.0_4.0.0.0__b77a5c561934e089/System.Xml.dll

mscorlib.resources
Version de l'assembly : 4.0.0.0
Version Win32 : 4.0.30319.17929 built by: FX45RTMREL

CodeBase : file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/mscorlib.resources/v4.0_4.0.0.0_fr_b77a5c561934e089/mscorlib.resources.dll

System.Windows.Forms.resources
Version de l'assembly : 4.0.0.0
Version Win32 : 4.0.30319.17929 built by: FX45RTMREL

CodeBase : file:///C:/Windows/Microsoft.Net/assembly/GAC_MSIL/System.Windows.Forms.resources/v4.0_4.0.0.0_fr_b77a5c561934e089/System.Windows.Forms.resources.dll

Generate a merged stringtable or report

The point would be to then be able to find out duplicate entries, within the project but even among several projects.

Ideally, it would generate an xml with filenames in comment, eg.

<!-- Control\ProcessFireMission.sqf START -->
<Key ID="STR_My_Amazing_Example_InvalidAsset">
  <Czech>Invalid asset type.</Czech>
  <English>Invalid asset type.</English>
  <French>Invalid asset type.</French>
  <German>Invalid asset type.</German>
  <Hungarian>Invalid asset type.</Hungarian>
  <Polish>Invalid asset type.</Polish>
  <Portuguese>Invalid asset type.</Portuguese>
  <Russian>Invalid asset type.</Russian>
  <Spanish>Invalid asset type.</Spanish>
</Key>

Better feedback when saving

Saving of larger files takes quite a few seconds. During that time the user recieves no feedback whether or not the saving is still ongoing. When saving has finished only a small message is shown at the bottom. When the user wants to exit the application one is asked whether one wants to drop all changes.

Suggestions:

  • While saving, a progressbar should be shown.
  • When the user exits one minute after saving, no prompt is shown, it just closes.
  • When the user wants to exit the programm without saving before, a prompt opens: Save, Cancel, Exit without Saving

Never ending loading

While loading an a folder, it never stopped loading. I was loading from my github directory and then the addon folder itself. While trying to open, it never stopped loading, I also placed a string table in there and then tried again with the same never ending loading.

Use SaveFileDialog class, to create an easier navigation experience

The current implementation works fine, but the biggest gripe I have with it is that it uses the old way of opening files.
This is incredibly frustrating if you have to navigate to a folder that is buried in the drive.

Using the SaveFileDialog class is a much better way to display files and folders to end user as it supports quick navigation such as bookmarks.

Duplicated progress bars

image

Steps to reproduce:

  1. Open file with errors
  2. Close the error message
  3. Open the file again
    -> Progress bar was duplicated

Copy/paste columns

Being able to Copy/Paste whole columns would be awesome to have since it would saves a lot of time when one does add a new language.

Add ability to reorder columns

@GodofMonkeys

2.BI always like to change somting. Like stringtable.xml, inside order of language was changed.
Original: Original, English, Czech, French, German, Italian, Polish, Portuguese, Russian, Spanish
New: Original, French, Spanish, Italian, Polish, Russian, German, Czech, English, Portuguese

So when I compare text file, it was a mess. So I use your tool: add new launguage, copy and paste, help me to rearrange.

If it possible to easily drag whole bar to define launguage inside file sequence? And tabler also show same order of language?

Add search capability

It's currently not possible to search for a certain ID. Making it hard to find a specific one in a large stringtable.xml.

Rename Translation Statistics

It's a bit ambiguous as it is. Considering the fact that it only does one thing—rendering graphs for the remaining untranslated strings—I'd suggest changing it to Translation Progress, or if you don't plan to expand this future any further, then a simple Remaining Translations might suffice.

Also, how about rounding down the stats to whole numbers. Unless I am missing something, having half a grade on translation scale doesn't sound very natural. Though, if there is actually a case for doing it so, then at least consider switching to percentages as a more intuitive representation. That way , instead of a precise number of (half-)strings remaining you would show a relative percentage above each incomplete language, corresponding to the amount left to reach the state of Original.

Add column scaling.

Would be nice to have the ability to resize columns manually and through auto-resize – double click at the edges. Gives a bit more control over presentation, such as whether translations are shown over a single row or bulked up over multiple lines to fit the column width.

Improve performance

Scrolling the list when working with a large stringtable.xml (4000 lines) is quite slow and laggy.

Open a new file more than once ?

Hello,
would it be possible to open a new file more than once?

So far I have to close the tool if I want to open another (set of) language file(s).

Still a great tool though.

tabler takes long to save big files

Hi bux578, I am a translator for ArmA3 main game into chinese.
I use tool include your tabler to help me proofread offical stringtable.xml text.
I have some idea, hope you can use these idea to help this utilitie tool more complete.


offical stringtable.xml always some big (e.g. 400kb~700kb, or more to 2.92Mb).
When tabler open larger file, It will run slow, and save file also slow.

When file big more than 1.99Mb to above 2Mb, the tabler will not respond at saving. Also, when save on about 1.5Mb file, it will take about 5min to saved file. Can fix this problem?


Once again thank you for making this tool :D

Add indentation settings

Is it possible to make indentation to be based on a user's setting? I guess that would help a lot with projects using different coding standards than ACE3 (for which it's set right now).

i18n of the tool itself

This is more of a cherry on top of the cake kind of feature request, if only for the fact that tabler's UI is fairly self-explanatory and there aren't even that many unique strings, to fully justify the amount of restructuring work that this undertaking might require.

However, if done through the auto-loading stringtable.xml as well, then it could be presented as a demo project for new users to explore available functionality and play with features in a safe environment—provided there is a reset button. 😄

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.