Download Latest Version AutoCodepage_v1.2.7_UNI.zip (622.4 kB)
Email in envelope

Get an email when there's a new version of AutoCodepage

Home / v1.2.6 / doc
Name Modified Size InfoDownloads / Week
Parent folder
AutoCodepage.txt 2023-03-29 6.1 kB
Totals: 1 Item   6.1 kB 0
******************************************************************
*                                                                *
*   AutoCodepage plugin v1.2.6 for Notepad++                     *
*   Builds for 32 and 64 bits Notepad++ installations available  *
*                                                                *
*   Author: Andreas Heim, 2016 - 2023                            *
*                                                                *
******************************************************************



====================
  Why this plugin?
====================

I'm a Delphi developer and beyond writing code I'm responsible for
our company's build system which is based on old-school batch
scripts. For changing and extending these scripts I use Notepad++.

One day I made some changes and after that we had a malfunction in
the build system caused by a typo related to the wrong encoding of
german umlaut characters - when editing the batch script I forgot
to set the correct character encoding, OEM 850 in this case.

To secure the process of editing our build scripts I wrote this
plugin to automate the encoding switching. Maybe some other batch
scripters will find it useful too.

To get as much flexibility as possible I made it configurable so
that one can use it not only for batch scripts on a german Windows
installation.



============
  Features
============

This plugin allows you to create file classes which are defined by
the related filename extensions and (optionally) a language (s.a.
menu "Languages" in Notepad++). For every file class you have to
provide the code page to which should be switched to when the
plugin detects that the active Notepad++ document is a member of
this file class.

The plugin captures the following events in Notepad++:

  - The active tab of Notepad++ is changed.

  - The language of a file already loaded in Notepad++ is changed.

  - The file extension of a file already loaded in Notepad++ is
    changed.

  - A file is saved, closed or deleted (only for internal
    management).

When one of these events fires the plugin gets invoked. After it
has verified the membership to a certain file class it changes the
code page of the active document to the related code page of its
file class, according to your settings.

NOTE: AutoCodepage only helps you to work with already existing
documents. The encoding of documents newly created in Notepad++
has to be set by the user BEFORE writing content.



=================
  Installation
=================

1. If you run a 32 bits version of Notepad++ copy the file
   "bin\x86\AutoCodepage.dll" to the directory
   "plugins\AutoCodepage" of your Notepad++ installation.
   In case of a 64 bits version take the file
   "bin\x64\AutoCodepage.dll". You can find the "plugins"
   directory under the installation path of Notepad++. The
   directory "AutoCodepage" you have to create by yourself.

2. Copy the file "doc\AutoCodepage.txt" to the directory
   "plugins\AutoCodepage\doc". If it doesn't exist create it.



===========
  History
===========

v1.2.6 - March 2023
~~~~~~~~~~~~~~~~~~~
- fixed:    When a list of files is opened using Explorer context
            menu entry, code page is switched for last opened file
            only.
- enhanced: Added new Notepad++ message constants up to v8.5.1
- enhanced: Added new Notepad++ menu command ids up to v8.5.1
- enhanced: Added new Scintilla constants up to v5.3.4


v1.2.5 - November 2022
~~~~~~~~~~~~~~~~~~~~~~
- fixed:    When plugin's dialog boxes are on screen but hidden by
            another application's window which has input focus, it
            is not possible to return to Notepad++ by clicking its
            taskbar icon.
- fixed:    Wrong implementation of Notepad++ version comparison.
- fixed:    Notepad++ hangs when plugin's settings dialog is about
            to be opened and another plugin has installed an
            external lexer.
- enhanced: Make 32 bit plugin compatible with Notepad++ v7.0 up
            to v8.4.7 and newer.
- enhanced: Make 64 bit plugin compatible with Notepad++ v7.7 up
            to v8.4.7 and newer.
- enhanced: Added new Notepad++ message constants from v7.9.2 up
            to v8.4.7
- enhanced: Added new Notepad++ menu command ids from v7.9.6 up
            to 8.4.7
- enhanced: Added new Scintilla constants from v4.4.6 up to v5.3.1
- enhanced: Adapted to new Scintilla v5.3.1 API of Notepad++ v8.4.7


v1.2.4 - June 2019
~~~~~~~~~~~~~~~~~~
- fixed:    The 64 bit version causes Notepad++ to crash when a file
            is loaded.
- changed:  Improved management of documents whose encoding already
            has been switched.
- changed:  Adapted to new Scintilla API v4.1.4 in Notepad++ v7.7


v1.2.3 - November 2018
~~~~~~~~~~~~~~~~~~~~~~
- changed:  Adopted new plugin hosting model of Notepad++ version
            v7.5.9 and higher.


v1.2.2 - July 2018
~~~~~~~~~~~~~~~~~~
- fixed:    Entry of JavaScript in language combobox uses
            deprecated language id. This fix is mandatory after
            upgrading to Notepad++ v7.5.7 or higher.


v1.2.1 - August 2017
~~~~~~~~~~~~~~~~~~~~
- enhanced: Language names get retrieved fully dynamical, no
            plugin update required after additional languages have
            been added to Notepad++.


v1.2.0 - March 2017
~~~~~~~~~~~~~~~~~~~
- changed:  Removed stuff for compiling ANSI plugins from plugin
            framework.
- changed:  Language names get retrieved by querying Notepad++.
- fixed:    Notepad++ hangs when a newly created document is saved
            to disk and the plugin gets invoked during this
            process.


v1.1.1 - March 2017
~~~~~~~~~~~~~~~~~~~
- fixed:    Removed design flaw in settings file data. It is
            recommended to delete your old settings file if you
            defined file classes without a related language.
- changed:  Minor changes to compile 64 bits version.
- enhanced: 64 bits version released.


v1.1 - March 2017
~~~~~~~~~~~~~~~~~
- changed:  Removed tabs from source code.
- changed:  Restructured source code.
- enhanced: Included Notepad++ languages up to Npp v7.3.3.
- enhanced: Updated NPPM_xxx message constants up to Npp v7.3.3.
- enhanced: Added wrapper methods for some Npp messages to
            NppPlugin class.
- enhanced: Version info in About box is getting retrieved from
            DLL file now.
- fixed:    The plugin causes pop up of annoying dialogs.


v1.0 - December 2016
~~~~~~~~~~~~~~~~~~~~
- Initial version

Source: readme.txt, updated 2023-03-29