Autopsy User Documentation  4.18.0
Graphical digital forensics platform for The Sleuth Kit and other tools.
Translating Documentation and the UI

Table of Contents

The Autopsy user base is global. You can help out by translating the UI and this documentation.

Translating Documentation

This section outlines how to translate this user documentation. To translate, you will need:

The Autopsy documentation is created by Doxygen from ".dox" text files in the docs/doxygen-user folder in the Github repository.

The first step is to fork the Autopsy Repository into your Git account and make a clone of it into your environment so that you can make edits to the files.

As you are editing, you can review your documentation by installing Doxygen and running 'doxygen' from within the translations folder. It will save the HTML to the 'user-docs' folder.

Translating To a New Language

If there is not already documentation in a language, then you need to make a copy of the entire English 'doxygen-user' folder and name it 'doxygen-user_AB' where AB is replaced by the 2 character country code. For example, 'doxygen-user_fr' for French and 'doxygen-user_ja' for Japanese.

Edit the Doxyfile to update the OUTPUT_LANGUAGE field. For English it has:

OUTPUT_LANGUAGE = English

Now, simply start translating the English documents.

Updating The Documentation

When new releases are made and the English documentation is updated, the other languages should be updated as well. To determine what has changed:

$ cd docs/doxygen-user_fr
$ git log -n 1 .
commit 94e4b1042af47908dd4a0b2959b3f6c3d4af1111
Author: John Doe <jdoe@sleuthkit.org>
Date: Tue Jan 1 22:56:09 2019 -0500
update to quick start

This shows you that commit 94e4b1042af47908dd4a0b2959b3f6c3d4af1111 was the last translation update to occur for the French version.

$ git diff 94e4b1042af47908dd4a0b2959b3f6c3d4af1111 ../doxygen-user
diff --git a/docs/doxygen-user/central_repo.dox b/docs/doxygen-user/central_repo.dox
index 83d3407e8..e8cd01c1b 100644
--- a/docs/doxygen-user/central_repo.dox
+++ b/docs/doxygen-user/central_repo.dox
@@ -79,6 +79,16 @@ Descriptions of the property types:
- Phone numbers are currently only extracted from call logs, contact lists and message, which come from the Android Analyzer module.
- <b>USB Devices</b>
- USB device properties come from the registry parsing in the Recent Activity Module.
+- <b>Wireless Networks</b>
+ - Wireless networks are correlated on SSIDs, and come from the registry par

Committing the Documentation

You should submit a Github Pull Request when:

To get the code committed, send a pull request to the main Autopsy repository.

Translating The UI

This section outlines how to translate the UI. To do this, you will need:

Autopsy Development Environment

You will need to have a full Autopsy development environment setup so that you can launch Autopsy with your translations and verify it is in the correct location and doesn't get cropped.

You can find instructions for doing this in BUILDING.txt.

Where The English Strings Are Stored

Autopsy uses two different methods for storing the English versions of the UI strings. Some are stored in Bundle.properties files and others are stored in the code as @Message annotations. The annotations make it harder for the code to be translated because translators would need to look in two places, but makes development easier.

To make translations easier, we've added some logic into our build process to merge the various strings together into a single place. When the Autopsy code is compiled, it merges the contents of the annotations and the Bundle.properties files into a single file named Bundle.properties-MERGED. One of these files exists for each Java package.

Let's look at an example in the corecomponents package. Note that some of these links may not be exactly correct once these files are updated and the documentation is not updated, but they serve as a basic reference):

Where The Translated Strings Are Stored

Each Java package should have a Bundle_AB.properties file that stores the translated text. The AB is replaced by the 2 character country code. Such as Bundle_fr.properties for French or Bundle_ja.properties for Japanese.

As an example, you can see the Japanese translation of the previous corecomponents package in Bundle_ja.properties.

This file needs to contain all of the strings for that language. It needs to be based off of the Bundle.properties-MERGED file, not the Bundle.properties file (which does not contain all of the strings).

Translating To a New Language

If there is not already documentation in a language, then you need to:

Updating The Translations

When new releases are made and the English UI is updated, the other languages should be updated as well. To determine what has changed:

$ cd Core/src/org/sleuthkit/autopsy/corecomponents
$ git log -n 1 Bundle_ja.properties
commit 94e4b1042af47908dd4a0b2959b3f6c3d4af1333
Author: John Doe <jdoe@sleuthkit.org>
Date: Tue Jan 1 22:56:09 2019 -0500

This shows you that commit 94e4b1042af47908dd4a0b2959b3f6c3d4af1333 was the last translation update to occur for the Japanese version.

$ git diff 94e4b1042af47908dd4a0b2959b3f6c3d4af1333 Bundle.properties-MERGED
-AutopsyOptionsPanel.restartNecessaryWarning.text=A restart is necessary for any changes to max memory to take effect.
+AutopsyOptionsPanel.restartNecessaryWarning.text=A restart is necessary for any memory changes to take effect.

Committing the Documentation

You should submit a Github Pull Request when:

To get the code committed, send a pull request to the main Autopsy repository.


Copyright © 2012-2021 Basis Technology. Generated on Thu Jul 8 2021
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 United States License.